2016-04-18 66 views
1

爲了獲得權限的描述。我用下面的代碼:獲取權限描述返回'null'

PackageManager packageManager = this.getPackageManager(); 
    long time = System.currentTimeMillis(); 
    PermissionInfo pinfo = null; 
    try { 
     pinfo = packageManager.getPermissionInfo("android.permission.BODY_SENSORS", PackageManager.GET_META_DATA); 
     if(pinfo != null) Log.i("permissions","pInfo not null???????????????????????????????????????"); 
     Log.i("permissions ", pinfo.loadDescription(packageManager) + " *** " + pinfo.group); 
    } catch (PackageManager.NameNotFoundException e) { 
      e.printStackTrace(); 
    } 
    time = System.currentTimeMillis() - time; 

但對於某些權限,喜歡 - android.permission.BATTERY_STATS,我有一個nullchar序列當我打電話pinfo.loadDescription(packageManager)。我不明白爲什麼?我試圖找到原因,但沒辦法得到它。任何安卓專家都可以爲我解釋一下嗎?

回答

3

當我調用pinfo.loadDescription(packageManager)時,我有一個空CharSequence。我不明白爲什麼?

因爲Google選擇不提供該權限的描述(或標題)。許多signature級權限都是如此。你可以檢查the AOSP edition of the framework manifest以瞭解你所期望的。

+0

非常感謝您的幫助。我找出了原因:) – sophie281988