0

シナリオ: 1 つのアプリのランチャーに 2 つのアクティビティが表示されていますが、1 つを開いてホームに移動し、もう 1 つを開いたときに最初のアクティビティが開かれるという問題が発生したため、それらは異なる taskAffinities を持っています。そこで、適切なタスクのために AndroidManifest に taskAffinity を追加しました。

私が得ている問題は、1つを開いてホームをクリックし、2つ目を押すと、適切なタスク/アクティビティが開くことですが、アイコンを開いて取得するには、アイコンを2回クリックする必要があります。 taskAffinity を指定するアクティビティで発生し、他のアクティビティは毎回最初のクリックで問題なく開きます。

731-1337/? W/InputMethodManagerService﹕ Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@4e640b6 attribute=null, token = android.os.BinderProxy@3edac0ca

ここにマニフェストがあります

<activity
        android:name=".firstActivity"
        android:theme="@android:style/Theme.Holo.Light.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

<activity
            android:name=".secondActivity"
            android:label="@string/second_activity"
            android:icon="@drawable/ic_second_activity"
            android:taskAffinity="secondTask"
            android:theme="@android:style/Theme.Holo.Light.NoActionBar">

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>
<activity android:name=".thirdActivity"
              android:label="@string/second_activity"
              android:taskAffinity="secondTask"
              android:theme="@android:style/Theme.Holo.Light.NoActionBar"/>
4

1 に答える 1

0

これを、起動直後に secondActivity によって呼び出されていた thirdActivty に追加することで修正しました。

              android:launchMode="singleTask"

だから、それは次のようになりました

<activity android:name=".thirdActivity"
          android:label="@string/second_activity"
          android:taskAffinity="secondTask"
          android:launchMode="singleTask"
          android:theme="@android:style/Theme.Holo.Light.NoActionBar"/>

誰かがこのソリューションが役立つことを願っています。

于 2015-04-21T19:18:18.753 に答える