获取Android库中安装的应用程序列表



我找到了这个答案如何获得安装的android应用程序列表并选择一个运行

但它不能完全回答我的问题,虽然我只需要找到是否安装了特定的应用程序,但我在库中没有上下文,因此我可以调用getPackageManager()并获得应用程序列表。

还有别的办法吗?也许只有通过在Android文件系统中搜索Java解决方案?

请帮忙!

您通常必须将Context参数添加到库API中,例如初始化函数,并从使用它的应用程序传递上下文。

然而,有一个hack式的解决方法(单行,强调这是一个丑陋的hack):

if (Runtime.getRuntime().exec(new String[]{"/system/bin/sh","-c","cd /data/data/jackpal.androidterm"}).waitFor() == 0) { Log.d("!!!", "Android Terminal Emulator app is installed"); }

此代码将检查android文件系统中是否存在私有应用程序目录。你不能列出另一个应用程序的私有目录,或者从它打开任何文件,但是你可以通过在那里尝试chdir来检查目录本身是否存在。

相关内容

  • 没有找到相关文章

最新更新