我有一个对话框对话框,在此我想查看应用程序所需的所有权限。从意图中恢复的应用程序的程序包名称。代码是这个
不幸的是,当我使用java.lang.ArrayIndexOutOfBoundsException打开对话框时,我的应用程序崩溃了:length = 3; index = 3的权限。append(requestedPermissions [i] +“ \ n”);
为什么?我该如何解决?
最佳答案
permissions.append(requestedPermissions[i]+"\n");
上面的行应该出现在您的
for
循环中。当前,它出现在for
循环之后,这就是为什么i
的值变为3
的原因(当for
变为3时i
终止)给出ArrayIndexOutOfBoundsException
。我想您想像这样将所有权限附加到
TextView
。for ( i = 0; i < requestedPermissions.length; i++) {
permissions.append(requestedPermissions[i]+"\n");
}