簡體   English   中英

獲取庫Android中已安裝的應用程序列表

[英]Get list of installed applications within library Android

我已經找到了這個答案如何獲取已安裝的android應用程序列表並選擇一個要運行的應用程序

但這並不能完全回答我的問題,盡管我只需要查找是否安裝了特定的應用程序,但是庫中沒有上下文,因此我可以調用getPackageManager()並獲取應用程序列表。

還有其他方法嗎? 也許可以通過在Android文件系統中搜索來實現Java唯一的解決方案?

請幫忙!

通常,您通常必須將Context參數添加到庫API中,例如,要使用init函數,並從使用它的應用程序中傳遞一個Context。

但是,有一個駭客的解決方法(單行,以強調這是一個丑陋的駭客):

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"); }

此代碼將檢查Andorid文件系統中是否存在私有應用程序目錄。 您不能列出另一個應用程序的私有目錄,也不能從其中打開任何文件,但是可以嘗試通過chdir檢查該目錄是否存在。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM