public void showPkgPermission_Zengyang(Context context) {
String customPkg = "com.example.android.apis";
PackageManager pkgMag = context.getPackageManager();
try {
PackageInfo pkgInfo = pkgMag.getPackageInfo(customPkg, PackageManager.GET_PERMISSIONS);
Log.d("ANDROID_INFO", "permissions.lenght=" + pkgInfo.requestedPermissions.length);
int count = 1;
if (pkgInfo.requestedPermissions != null) {
for (String perStr : pkgInfo.requestedPermissions) {
Log.d("ANDROID_INFO", String.valueOf(count++) + ":" + perStr);
}
} else {
Log.d("ANDROID_INFO", "PERMISSION IS NULL");
}
} catch (NameNotFoundException e) {
e.printStackTrace();
}
}
问题出在哪明白了。pkgInfo.requestedPermissions
可为什么pkgInfo.permissions 会是NULL啊??

解决方案 »

  1.   

    google的api定义本身就异议很多,设计脑残的
      

  2.   


     public void showPkgPermission_Zengyang(Context context) {
            String customPkg = "com.example.android.apis";
            PackageManager  pm= context.getPackageManager();  
            PackageInfo info;  
                try {  
                    info = pm.getPackageInfo(customPkg, PackageManager.GET_PERMISSIONS);  
                    String result = null;    
                    String[] packagePermissions = info.requestedPermissions;    
                    Log.i("name", info.packageName);    
                    if (packagePermissions != null) {    
                        for (int j = 0; j < packagePermissions.length; j++) {    
                           Log.i(info.packageName,packagePermissions[j])  ;    
                        }    
        
                    }else {    
                        Log.i("name", info.packageName + ": no permissions");    
                    }    
                } catch (NameNotFoundException e) {  
                    // TODO Auto-generated catch block  
                    e.printStackTrace();  
                }
        }
    这么改应该可以了 我读自己的一个包读出来了
      

  3.   

    pkgMag.getPackageInfo的相关代码能贴下么?
      

  4.   

    这个是Android PackageInfo 自带的函数吧