用于在Android中循环列表以获取权限列表

时间:2012-07-28 20:31:53

标签: android loops append

我循环遍历列表并尝试将应用程序列表附加到String但到目前为止我只能附加1个应用程序。如果我尝试添加到数组并在列表视图中显示它,它可以正常工作。

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

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


                            internetpermissionsText += appname + "\n";

                            Log.e("TAG", "Im in!");

                            }

                            internetPermission.setText(internetpermissionsText);


                        }

应用程序列表应显示为

Angry Birds
Facebook
Twitter
Internet

但只是显示

Angry Birds

Logcat(垃圾邮件过多) http://pastebin.com/PEs8z0Kf

1 个答案:

答案 0 :(得分:1)

正如我在上面的评论中所说的那样试试这个:

String internetpermissionsText = "";
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();
                internetpermissionsText += appname + "\n";
                Log.e("TAG", "Im in!");

            }
        }
    }
}
internetPermission.setText(internetpermissionsText);