1

ホームランチャーのように機能するアプリを作成しました。したがって、ユーザーがホームボタンをクリックすると、ランチャーを使用して完全なアクションが実行されるか、アプリの名前が「myhomelauncher」などになります。

ホームボタンをクリックして myhomelauncher をクリックすると、アプリケーションは最初からすべてを完全に正常にロードします。アプリケーションの 2 番目の画面で、アプリのアクティビティ 2 を見ていると言い、[ホーム] ボタンをクリックして myhomelauncher をクリックすると、リロードされていない同じアクティビティ 2 ウィンドウが表示されます。(リロードして、2 ではなくアクティビティ 1 を表示する必要があります)

ランチャーをクリックするたびにリロードできるアプリをたくさん見てきました。なぜ私のものではないのですか?

これが私のmanifest.xmlで行ったことです

<activity
    android:name=".MyLauncher"
    android:label="@string/app_name"
    android:persistent="true"
    android:screenOrientation="landscape">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
        <category android:name="android.intent.category.HOME" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

どこが間違っているのかわからない?

4

3 に答える 3

2

ドキュメントを参照してください。問題に関連する可能性があるのは、次の設定です。

に設定android:launchModeするsingleTaskと問題が解決すると思われますが、これが引き起こす副作用に注意してください。

そう:

<activity
    android:name=".MyLauncher"
    android:label="@string/app_name"
    android:persistent="true"
    android:screenOrientation="landscape"
    android:launchMode="singleTask">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
        <category android:name="android.intent.category.HOME" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

トリックを行う必要があります。

于 2013-02-27T10:00:25.173 に答える
2

これは、私にとってうまくいくと思われるメニフェストの関連セクションです。複数のアプリを必要としないため、singleInstanceを起動モードにしたことに注意してください。

<application  android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".usbEffects" 
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen"                
                android:windowSoftInputMode="stateAlwaysHidden" 
                android:screenOrientation="portrait"
                android:launchMode="singleInstance"
                android:configChanges="keyboardHidden|orientation"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

    </activity>
于 2013-02-27T09:57:53.657 に答える
2

見上げるlaunchMode。しかし、注意してください、大きな力には大きな責任が伴います。

于 2013-02-27T09:56:54.813 に答える