2

アイコンとテキストのペア(デスクトップのような)として利用可能なアプリケーションのアクションを含むアプリケーションのメイン画面としてビューがあります。

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) を使用することで実行できると考えましたが、機能していないようです。

アプリケーションにインストールされているアクティビティを動的に検出するようにコーディングしたいと思います。これを行う方法について何かアイデアはありますか?ありがとうございました

4

1 に答える 1