0

Android の Activity lifecycleによると、メソッド Activity.onPause() は、別のアクティビティがフォアグラウンドで呼び出された場合にのみ呼び出されます。私のアプリケーションには、android:launchMode="singleTask" で設定されたアクティビティが 1 つしかありません。

以下のスタックトレースによると、新しいインテントを受け取ると Activity.onPause() がトリガーされます。

誰でも理由を説明できますか?

スタックトレース:

android.app.Activity.performPause(Activity.java:3877)
android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1191)
android.app.ActivityThread.performNewIntents(ActivityThread.java:1736)
android.app.ActivityThread.handleNewIntent(ActivityThread.java:1746)
android.app.ActivityThread.access$2300(ActivityThread.java:117)
android.app.ActivityThread$H.handleMessage(ActivityThread.java:982)
android.os.Handler.dispatchMessage(Handler.java:99)
android.os.Looper.loop(Looper.java:130)
android.app.ActivityThread.main(ActivityThread.java:3691)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:507)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:907)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)
dalvik.system.NativeStart.main(Native Method)

よろしく、

4

1 に答える 1

0

この動作は予想されます。Androidのソースコード(v2.3.7)を確認しましたが、インテントを受け取る前にアクティビティが一時停止されています。

于 2012-05-22T03:39:57.200 に答える