diff --git a/android/custom_rules.xml b/android/custom_rules.xml index 596d687a23..e7edd4ff7e 100644 --- a/android/custom_rules.xml +++ b/android/custom_rules.xml @@ -1,14 +1,17 @@ + + + - + - + diff --git a/android/src/org/ppsspp/ppsspp/NativeActivity.java b/android/src/org/ppsspp/ppsspp/NativeActivity.java index b8a135047a..b2130e91fe 100644 --- a/android/src/org/ppsspp/ppsspp/NativeActivity.java +++ b/android/src/org/ppsspp/ppsspp/NativeActivity.java @@ -172,6 +172,16 @@ public class NativeActivity extends Activity implements SurfaceHolder.Callback { } } + @TargetApi(23) + public void sendInitialGrants() { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { + // Let's start out granted if it was granted already. + if (this.checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) { + NativeApp.sendMessage("permission_granted", "storage"); + } + } + } + @Override public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) { @@ -239,6 +249,8 @@ public class NativeActivity extends Activity implements SurfaceHolder.Callback { NativeApp.sendMessage("cacheDir", getCacheDir().getAbsolutePath()); + sendInitialGrants(); + vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE); if (Build.VERSION.SDK_INT >= 11) { checkForVibrator();