2012-07-23 8 views
1

현재 전화를 통해 설치된 모든 응용 프로그램의 특정 권한을 찾기 위해 목록을 반복적으로 시도하고 있습니다. 누군가가 목록을 반복하는 올바른 방법을 말해 줄 수 있습니까?목록을 반복하여 권한을 찾으십시오.

public void getPermissions(Context context) { 
    PackageManager packageManager = context.getPackageManager(); 
    final List<PackageInfo> apps = context.getPackageManager() 
     .getInstalledPackages(PackageManager.GET_PERMISSIONS); 

    for (PackageInfo pi : apps) { 
     String[] permissions = pi.requestedPermissions; 
     if (permissions != null) { 
      for (String permission : permissions) { 
       Log.d("TAG", permission); 
          if (permission.equals("android.permission.INTERNET")) { 

           String appname=pi.applicationInfo.loadLabel(packageManager).toString(); 
           ImageView appicon; 

           appicon = pi.applicationInfo.setImageDrawable(packageManager); 
           Log.e("TAG", "Permission found for "+ appname); 

           internetArray.add(appname); 
          } 
      } 
     } 
    } 

} // getPermissions 방법의 끝

편집 : ArrayList에에서 작업 표시 얻을 관리했다.

답변

2
public void getPermissions(Context context) { 
    PackageManager packageManager = context.getPackageManager(); 
    final List<PackageInfo> apps = context.getPackageManager() 
     .getInstalledPackages(PackageManager.GET_PERMISSIONS); 

    for (PackageInfo pi : apps) { 
     String[] permissions = pi.requestedPermissions; 
     if (permissions != null) { 
      for (String permission : permissions) { 
       Log.d("TAG", permission); 
       if (permission.equals("android.permission.INTERNET")) { 
        // do something 
       } 
      } 
     } 
    } 
} 
+0

패키지 이름과 함께 아이콘을 arraylist에 추가 할 수 있습니까? 필자는 응용 프로그램 목록을 저장하고 arraylist에 저장하고 표시하지만 아이콘을 표시 할 수 있습니까? – dythe

관련 문제