MyPermission
Android輕量級權(quán)限申請。引用簡單方便
運行時權(quán)限刨疼、未知應(yīng)用安裝權(quán)限泉唁、懸浮窗權(quán)限、顯示通知和訪問通知權(quán)限
直通車MyPermission
?簡介
對AndPermission的封裝揩慕。鏈式調(diào)用亭畜,簡單方便。
- 運行時權(quán)限
- 未知應(yīng)用安裝權(quán)限
- 懸浮窗權(quán)限
- 顯示通知權(quán)限
- 訪問通知權(quán)限
在申請多個權(quán)限時迎卤,本框架采用排隊方式申請贱案,即先申請第一個權(quán)限,第一個申請成功后再進行下一個的申請流程止吐,第一個失敗則為本次申請失敗宝踪。
? 使用說明
? 集成
?添加jitpack庫
allprojects {
repositories {
...
maven { url 'https://www.jitpack.io' }
}
}
?添加依賴
dependencies {
implementation 'com.github.ZLYang110:MyPermission:1.0'
}
運行時權(quán)限
PermissionUtils.request(new RequestListener() {
@Override
public void onSuccess() {
//TODO 授權(quán)成功
? ? ? ? ? ? ? ? Toast.makeText(MainActivity.this , "成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailed() {
//TODO 授權(quán)失敗
? ? ? ? ? ? ? ? Toast.makeText(MainActivity.this , "失敗", Toast.LENGTH_SHORT).show();
}
},MainActivity.this,REQ_CODE_PERMISSION,Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE);
?安裝未知權(quán)限
PermissionUtils.requestInstall(new RequestListener() {
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this , "成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailed() {
Toast.makeText(MainActivity.this , "失敗", Toast.LENGTH_SHORT).show();
}
},MainActivity.this,new File(MainActivity.this.getCacheDir(), "test.apk").getPath());
?懸浮窗權(quán)限
PermissionUtils.requestOverlay(new RequestListener() {
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this , "成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailed() {
Toast.makeText(MainActivity.this , "失敗", Toast.LENGTH_SHORT).show();
}
},MainActivity.this);
?設(shè)置權(quán)限
PermissionUtils.requestSetting(new RequestListener() {
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this , "成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailed() {
Toast.makeText(MainActivity.this , "失敗", Toast.LENGTH_SHORT).show();
}
},MainActivity.this);
顯示通知權(quán)限
PermissionUtils.requestNotificationShow(new RequestListener() {
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this , "成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailed() {
Toast.makeText(MainActivity.this , "失敗", Toast.LENGTH_SHORT).show();
}
},MainActivity.this);
訪問通知權(quán)限
PermissionUtils.requestNotificationAccess(new RequestListener() {
@Override
public void onSuccess() {
Toast.makeText(MainActivity.this , "成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onFailed() {
Toast.makeText(MainActivity.this , "失敗", Toast.LENGTH_SHORT).show();
}
},MainActivity.this);