[解決済み] 別のアプリケーションでアクティビティを開始するには?
2023-07-14 15:28:57
質問
以下のように定義されたアプリケーションAを持っています。
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name="com.example.MyExampleActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
さて、アプリケーションBで、アプリケーションAのアクティビティを開始するコードはどのように書けばいいのでしょうか?ありがとうございます。
どのように解決するには?
Permission Denial: starting Intent..." エラーに直面した場合、またはアプリの起動中に理由なくクラッシュした場合、マニフェストで次の 1 行コードを使用します。
android:exported="true"
finish();に注意してください、それを逃すとアプリがフリーズします。
finish();
他の解決策は、同じアプリケーションにある2つのアクティビティに対してのみ機能します。私の場合、アプリケーションBはクラス
com.example.MyExampleActivity.class
を知らないので、コンパイルに失敗します。
Webで検索したところ、以下のようなものが見つかり、うまくいきました。
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.example", "com.example.MyExampleActivity"));
startActivity(intent);
setClassNameメソッドを使うこともできます。
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName("com.hotfoot.rapid.adani.wheeler.android", "com.hotfoot.rapid.adani.wheeler.android.view.activities.MainActivity");
startActivity(intent);
finish();
また、あるアプリから別のアプリに値を渡すこともできます。
Intent launchIntent = getApplicationContext().getPackageManager().getLaunchIntentForPackage("com.hotfoot.rapid.adani.wheeler.android.LoginActivity");
if (launchIntent != null) {
launchIntent.putExtra("AppID", "MY-CHILD-APP1");
launchIntent.putExtra("UserID", "MY-APP");
launchIntent.putExtra("Password", "MY-PASSWORD");
startActivity(launchIntent);
finish();
} else {
Toast.makeText(getApplicationContext(), " launch Intent not available", Toast.LENGTH_SHORT).show();
}
関連
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] Androidでアクティビティ起動時にEditTextにフォーカスが当たらないようにする方法
-
[解決済み] インスタンス状態の保存を使用してアクティビティ状態を保存するにはどうすればよいですか?
-
[解決済み] Androidのローテーションでアクティビティを再開する
-
[解決済み] アプリケーションを終了することは嫌われますか?
-
[解決済み] 設定ページに移動せずに位置情報サービスをオンにする
-
[解決済み] wrap_contentでRelativeLayoutがフルスクリーンになってしまう
-
[解決済み] TabLayoutに対応したandroidデザインでタブテキストのフォントを変更する
-
[解決済み] EditTextの右側のDrawableにonClickListenerを設定する [重複] [重複
-
[解決済み] ブルートゥースアプリケーションのテストにアンドロイドエミュレータを使用するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] AndroidにおけるViewPager2の適切な実装
-
[解決済み] プログラム的に電話をかけるには?
-
[解決済み] FloatingActionButtonのサンプルとサポートライブラリ
-
[解決済み] Android Studioの「未実装メソッドの追加」機能
-
[解決済み] ProjectScopeServices に Factory タイプのサービスはありません。
-
[解決済み] PendingIntentの "requestCode "は何に使うのですか?
-
[解決済み] FABアイコンの色を設定する
-
[解決済み] ViewPager2でスワイプを無効にするには?
-
[解決済み] Recyclerviewと異なるタイプの行のインフレーションの処理
-
[解決済み] <string> XMLで改行やタブを作るには(eclipse/android)?