【发布时间】:2016-07-28 11:16:37
【问题描述】:
我正在使用运行时权限,并尝试制作一种方法来显示权限理由/s 以获取权限/s 和理由/s 问题是: “从内部类中访问变量‘requiredPermissions’,需要声明为final”
这就是我调用方法的方式:
showRationale(R.string.permission_ACCESS_FINE_LOCATION_rationale, new String[]{Manifest.permission.ACCESS_FINE_LOCATION});
这就是方法:
private void showRationale(int rationale, String[] requiredPermissions) {
Snackbar.make(findViewById(R.id.myCoordinatorLayout), rationale, Snackbar.LENGTH_INDEFINITE)
.setAction(R.string.go_grant_permission, new View.OnClickListener() {
@Override
public void onClick(View view) {
// 'requiredPermissions' below causes the problem
ActivityCompat.requestPermissions(MapsActivity.this, requiredPermissions, MY_PERMISSIONS_REQUEST_ACCESS_FINE_LOCATION);
}
})
.show();
}
【问题讨论】:
-
在
String[] requiredPermissions之前添加final:final String[] requiredPermissions。
标签: java android android-studio