Improve dynamic permissions

This commit is contained in:
topjohnwu
2017-11-06 05:36:20 +08:00
parent ce5b13824e
commit 99c74b31be
7 changed files with 39 additions and 21 deletions
@@ -18,7 +18,6 @@ import com.topjohnwu.magisk.utils.Utils;
public class Activity extends AppCompatActivity {
private Runnable permissionGrantCallback = null;
private AssetManager mAssetManager = null;
private Resources mResources = null;
@@ -47,12 +46,13 @@ public class Activity extends AppCompatActivity {
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
MagiskManager mm = getMagiskManager();
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
if (permissionGrantCallback != null) {
permissionGrantCallback.run();
if (mm.permissionGrantCallback != null) {
mm.permissionGrantCallback.run();
}
}
permissionGrantCallback = null;
mm.permissionGrantCallback = null;
}
@Override
@@ -65,10 +65,6 @@ public class Activity extends AppCompatActivity {
return mResources == null ? super.getResources() : mResources;
}
public void setPermissionGrantCallback(Runnable callback) {
permissionGrantCallback = callback;
}
public MagiskManager getMagiskManager() {
return (MagiskManager) super.getApplicationContext();
}