android之PackageManager简单介绍
PackageManager相關
????? 本類API是對全部基于載入信息的數據結構的封裝,包含下面功能:
安裝,卸載應用查詢permission相關信息
查詢Application相關信息(application,activity,receiver,service,provider及對應屬性等)
查詢已安裝應用
添加,刪除permission
清除用戶數據、緩存,代碼段等
/** * PackageManager介紹: * 本類API是對全部基于載入信息的數據結構的封裝,包含下面功能: * 安裝,卸載應用 查詢permission相關信息 查詢Application相關 * 信息(application,activity,receiver,service,provider及對應屬性等) * 查詢已安裝應用 添加,刪除permission 清除用戶數據、緩存,代碼段等 非查詢相關的API須要特定的權限。 * 主要包括了,安裝在當前設備上的應用包的相關信息 * 例如以下:獲取已經安裝的應用程序的信息 */ private HashMap<String, String> installPackagesInfo(){ // 獲取packageManager對象 PackageManager packageManager = this.getPackageManager(); /*getInstalledApplications 返回當前設備上安裝的應用包集合 * ApplicationInfo相應著androidManifest.xml中的application標簽。通過它能夠獲取該application相應的信息 */ List<ApplicationInfo> applicationInfos = packageManager.getInstalledApplications(0); HashMap<String, String> resultMap = new HashMap<String, String>(); Iterator<ApplicationInfo> iterator = applicationInfos.iterator(); while(iterator.hasNext()){ ApplicationInfo applicationInfo = iterator.next(); String packageName = applicationInfo.packageName;// 包名 String packageLabel = packageManager.getApplicationLabel(applicationInfo).toString();//獲取label resultMap.put(packageLabel, packageName); } return resultMap; }
?另外在PackageManager類中,我們發現了幾個非常好玩的方法。
?
??
?
XMLResourceParse getXml(String packageName,int resid,ApplicationInfo appInfo)能夠從指定的包中載入某個xml文件。
總結
以上是生活随笔為你收集整理的android之PackageManager简单介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 看微信了解MySQL及相关IT技术
- 下一篇: .net framework 25007