Intent コンストラクタの場合 -
Intent(Context context, Class myClass)
コンテキスト引数は正確に何を指定していますか?
また、他のアプリケーションのコンテキストに設定する必要はありますか?
Intent コンストラクタの場合 -
Intent(Context context, Class myClass)
コンテキスト引数は正確に何を指定していますか?
また、他のアプリケーションのコンテキストに設定する必要はありますか?
Context
ドキュメントによると:
アプリケーション環境に関するグローバル情報へのインターフェイス。これは、Android システムによって実装が提供される抽象クラスです。アプリケーション固有のリソースとクラスへのアクセス、およびアクティビティの起動、インテントのブロードキャストと受信などのアプリケーションレベルの操作のアップコールを許可します。
つまり、アプリケーションへのアクセスを提供するクラスです。
また、他のアプリケーションのコンテキストに設定する必要はありますか?
いいえ、アプリケーションのコンテキストは Android によって提供されます。
通常、「通常の」アプリケーションでは、コンテキストを気にする必要はありません。別のアプリケーションからアプリケーションをアクティブにするか、実行中の 2 つのアプリケーション間でメッセージを送信する必要がある場合を除きます。
ただし、アプリケーションを起動する場合、通常は別のアプリケーションのコンテキストがないため、そのコンテキストは必要ありません。代わりに、次の形式でAndroid に(アプリケーション名を使用して)要求できますIntent
。
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.package.address");
startActivity(LaunchIntent);
詳しくは、Android で別のアプリケーションからアプリケーションを起動するをご覧ください。