2

私は主な活動とサービスを持っています。サービスは2番目のアクティビティを呼び出しています。-メインがフォアグラウンドにある場合は、すべて問題ありません。2番目はメインの上に開かれます。-「戻る」ボタンでメインを閉じると、デスクトップの上で2番目が開きます。かっこいいね。-しかし、デスクトップに切り替えてメインを閉じると([ホーム]ボタンを押す)、2番目のアクティビティが非表示で開かれ、アプリのタスクに切り替えたときにのみ表示されます。

アプリがバックグラウンドにある場合に備えて、タスクをフォアグラウンドに移動するのを手伝ってもらえますか?新しいタスクとして2番目のアクティビティを作成しようとしましたが、これは役に立ちません。

4

3 に答える 3

2

このアクティビティにインテントを送信するよりも、タスクのトップ アクティビティに singleTask としてフラグを立てて、このアクティビティを再作成せずにすべてのタスクがフォアグラウンドに移動されるようにします。

于 2010-12-18T03:43:50.110 に答える
1

この質問で言及されているのとまったく同じ問題。

次のコード スニペットで解決しました。 i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); アクティビティを前面に戻します。

Intent i=new Intent(ApplicationStatus.this,NotifyActivity.class);
                    //i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                    i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//optional
                    i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);//will cause it to come to foreground
                    i.putExtra("ID_TimeLeft",String.valueOf(TimeLeft));
                    startActivity(i);
于 2013-03-22T09:14:18.070 に答える
1

私が抱えていた問題のように聞こえます。見てください: http://groups.google.com/group/android-developers/browse_thread/thread/183340108cb847fd

次のように、タスクのアフィニティを設定してみてください。

<activity android:name="activity_two" android:taskAffinity=""></activity>

あなたの AndroidManifest.xml で(あなたが言及したように、アクティビティを独自のタスクにします)。

他のアクティビティを別のタスクとして最近の履歴リストに表示したくない場合は、次を追加することもできます。

android:excludeFromRecents="true"

マニフェストのアクティビティに。

于 2011-01-21T14:23:40.030 に答える