0

プロジェクトでは、Android タブレットにインストールされる特定のアプリケーションを起動したいと考えています。これは私たちが制御できるアプリケーションではなく (完全にサードパーティです)、Image_Capture Camera Intent が機能する方法と同様のワークフローが必要です (つまり、起動し、終了するのを待って、onActivityResult 関数でデータを受信します)。 )次のコードを使用してアプリケーションを起動できますが:

    Intent intent = this.getPackageManager().getLaunchIntentForPackage("my.thirdparty.package");
    if(intent != null) {
        startActivityForResult(intent,MY_INT_FLAG);
    } else {
        new AlertDialog.Builder(this).setMessage("This device does not appear to have the application installed").setPositiveButton("Okay",null).create().show();           
    }

アプリケーションを起動しているだけなので、resultCode 0 (RESULT_CANCELLED)を onActivityResult にすぐに渡します。

私が望むのは、特定のパッケージの意図のリストを発見できることです。PackageManager にはgetInstalledApplicationsという関数があります(最初にパッケージ名を取得した方法です) が、フラグPackageManager.GET_INTENT_FILTERSは、結果のApplicationInfoオブジェクトの metaData プロパティを設定していないようです。

インテント リストを取得するか、APK からデータをマイニングするかについて、洞察を持っている人はいますか?

4

0 に答える 0