0

S起動が完了するとすぐに開始されるサービスがあります。アプリの起動時にサービスにバインドするアクティビティが1つあるアプリケーションがありますS

これで、特定のイベントのブロードキャストレシーバーを登録したので、イベントが発生した場合は同じアクティビティを起動する必要があります。同じアクティビティの別のインスタンスを作成したくないので、アクティビティを再利用したいのですが、onCreate()アクティビティonRestart()メソッドを呼び出す必要があります。

どうすればこれを達成できますか?

4

3 に答える 3

1

私はあなたの質問に100%肯定的ではありませんが、ここに行きます。mainactivityで静的メソッドを使用して、サービスから呼び出すことができます。

あなたの主な活動では:

  @Override
public void onCreate() {
    super.onCreate();
    superAwesomeMethod();

public static void superAwesomeMethod() {
    //stuff you want called on onCreate

その後、あなたのサービスで:

//event listener capture
YourActivityName.superAwesomeMethod();
于 2012-10-08T09:22:56.530 に答える
0

意図を理解したい場合は

http://blog.akquinet.de/2010/04/15/android-activites-and-tasks-series-intent-flags/

その非常に明確で、それに付随するデモアプリは本当に役に立ちました。

于 2012-10-08T09:29:54.940 に答える
0

AndroidManifest.xmlこれで試してみてください

<activity android:launchMode="singleTop">

あなたの主な活動のために

于 2012-10-08T09:19:52.277 に答える