簡體   English   中英

如何在android中安裝應用程序名稱?

[英]How to get installed application name in android?

我已經做了一個小方法來在android中顯示已安裝的應用程序名稱。 但是當我給“name”屬性顯示異常錯誤時。 當我給“packageName”時,該方法執行完美,並在列表中顯示包名稱

private void getInstalledApps() {
    // TODO Auto-generated method stub
     PackageManager packageManager=this.getPackageManager();
        List<ApplicationInfo applist=packageManager.getInstalledApplications(0);


        Iterator<ApplicationInfo> it=applist.iterator();
        while(it.hasNext()){
            ApplicationInfo pk=(ApplicationInfo)it.next();

            String appname=pk.name.toString();

            installedapplist.add(appname);
        }

}

在上面的代碼中,當我給String appname=pk.packageName.toString()它工作正常但是當我給String appname=pk.name.toString()程序拋出異常錯誤。 請幫我解決問題。

我的猜測是你的代碼拋出NullPointerException,因為name字段為null。 無論如何,你可能想要的是:

String appname = packageManager.getApplicationLabel(pk).toString()

通過使用此功能,您可以獲得已安裝的應用包名稱和應用名稱

List<PackageInfo> packageInfos=getPackageManager().getInstalledPackages(0);
for (PackageInfo packageInfo:packageInfos)
{
        Log.d(TAG,"packageName "+packageInfo.packageName);
        Log.d(TAG,"appname "+getPackageManager().getApplicationLabel(packageInfo.applicationInfo));
}

暫無
暫無

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

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