Android 6.0(API 23) 및 그 이상의 동적 요청 권한을 사용하는 방법
//
private String[] mPermissions = new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.CAMERA, Manifest.permission.READ_PHONE_STATE};
private void applyPermission() {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
// permissions,
List permissionList = new ArrayList<>();
int mRequestCode = 100;//
//
for (int i = 0; i < mPermissions.length; i++) {
if (ContextCompat.checkSelfPermission(this, mPermissions[i]) != PackageManager.PERMISSION_GRANTED) {
permissionList.add(mPermissions[i]);//
}
}
//
if (permissionList.size() > 0) {
ActivityCompat.requestPermissions(this, mPermissions, mRequestCode);
}
}
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
if (grantResults.length > 0) {
Log.d(TAG, "grantResults.length:" + grantResults.length);
for (int i = 0 ;i < grantResults.length ; i ++){
if (grantResults[i] != PackageManager.PERMISSION_GRANTED){
applyPermission();
break;
}
}
}
}
}
네가 응용한 시작 인터페이스의 onCreate 방법에서 applyPermission 방법을 사용하면 된다.1. 부여되지 않은 권한이 있는지 조회 2.있으면 이 권한을 요청합니다.요청 결과에 부여되지 않은 권한이 있는지 판단합니다. (onRequestPermissionsResult에 있습니다.) applyPermission 방법을 재조정할 수 있습니다.4. 사용자가 모든 권한을 부여할 때까지.방법이 간단하고 거칠다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.