アイコンとテキストのペア(デスクトップのような)として利用可能なアプリケーションのアクションを含むアプリケーションのメイン画面としてビューがあります。
AndroidManifest.xml でのみ定義されているアクティビティをプログラムで調べたい
私が持っているとします:
< activity android:name="example.mainActivity" android:label="mainActivity">
< intent-filter>
< action android:name="android.intent.action.MAIN" />
< category android:name="android.intent.category.LAUNCHER" />
< /intent-filter>
< /activity>
< activity android:name="example.activity1" android:label="Activity1">
< intent-filter>
< action android:name="android.intent.action.VIEW" />
< category android:name="example.custom.ACTIVITY" />
< /intent-filter>
< /activity>
< activity android:name="example.activity2" android:label="Activity2">
< intent-filter>
< action android:name="android.intent.action.VIEW" />
< category android:name="example.custom.ACTIVITY" />
< /intent-filter>
< /activity>
たとえば、Activity3 を追加すると自動的に読み込まれるため、mainActivity で Activity1 と Activity2 を動的に読み込む必要があります。
インテント インテント = 新しいインテント("android.intent.action.VIEW"); インテント.addCategory("example.custom.ACTIVITY"); リスト解決 = getPackageManager().queryIntentActivities(intent, 0);
解決リストには、2 つの定義されたアクティビティがあると予想されるため、それらのラベルと画像を取得し、デスクトップのアイコンを作成できます。
これは、カスタム カテゴリ example.custom.ACTIVITY を定義し、mainActivity で packageManager.queryIntentActivities(Intent intent, int flags) を使用することで実行できると考えましたが、機能していないようです。
アプリケーションにインストールされているアクティビティを動的に検出するようにコーディングしたいと思います。これを行う方法について何かアイデアはありますか?ありがとうございました