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