0

単一のアクティビティが欲しいのですが、多くの場所からインテントが起動され、それらのインテントは10秒間に2回のように呼び出されることもあります...

重要なのは、アクティビティを1つだけにしたいということです。新しいインテントが来るたびに、アクティビティのGUI状態を更新したいだけです。

これどうやってするの ?

android:launchMode = "singleTask"とsingleinstanceを配置しましたが、問題はonNewIntentがまったく呼び出されないことです...

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    refreshGuiState();
}

編集

   <activity android:name="MyActivity"
       android:launchMode="singleTask" 

    android:theme="@android:style/Theme.Translucent.NoTitleBar"
        android:screenOrientation="portrait" android:label="@string/app_name"
        >
    </activity>

  Intent i=new Intent(MyApp.myContext, MyActivity.class);
            MyApp.myContext.startActivity(i);
4

1 に答える 1

0

android:taskAffinity=""のマニフェスト定義に追加MyActivity

このアクティビティを指定launchMode="singleTask"した場合でも、明示的に指定しないtaskAffinityと、別のタスクが発生することはありません。

于 2012-09-24T15:28:07.733 に答える