:
のAndroidは独自の上のすべてのActivity
、Service
とBroadcastReceiver
生活することを意味し、疎結合アプリケーションのライフサイクルを目指しています。それらはIntent
によって開始され、Context
からシステムアーキテクチャに送信され、新しいコンポーネントが開始されます。したがって、ブレークポイントのstacktraceにはIntent
のソースが表示されず、汎用システムコールがいくつか表示されます。
Activity
が呼び出された内容を確認するには、追加のデータを呼び出してIntent
に追加する必要があります。あなたはこのようにそれを実行します。
intent.putExtra("SOME_KEY", someValue);
そしてonCreate()
であなたはこのようにそれを読む:送信者が元の値を明記した場合、あなたは
:-)ここでそれを持つことになります
if(savedInstanceState != null) {
String source = savedInstanceState.getString("SOME_KEY");
}
を副題として、あなたは通常Activity
を始めたものを知りたくありません。上記のコードが使用される唯一の実際のケースは、Activity
に渡されたいくつかのパラメータを設定する状況です。それ以外にも、Activity
は別個のエンティティである必要があります:-)
私の知る限り、AndroidのSDKの面でこれを実行する方法はありません。'Intent'には、' startActivity() 'を呼び出した人を示す' Intent'に余分なものを置くなど、何かを区別するのに役立ちます。次に、 'ActivityI'が' getIntent() 'を介して取得した' Intent'を見て、どのアクティビティがそれを開始したのかを判断できます。 – CommonsWare