From 431dab7073e47b7faafa870bb5637ed4edb7d54f Mon Sep 17 00:00:00 2001 From: junjiez Date: Mon, 29 Aug 2016 16:42:20 +0800 Subject: SnapdragonCamera:Fix location permission dialog disappeared Request loaction permission for the first time of launching Camera, and add android:configChanges in manifest to avoid PermissionActivity to be created when rotate screen. Change-Id: Ibaffad1629830beccf41e32ea5e224abd765ffb6 CRs-Fixed: 1059678 --- src/com/android/camera/CameraActivity.java | 24 +++++++++++------------- src/com/android/camera/PermissionsActivity.java | 1 - 2 files changed, 11 insertions(+), 14 deletions(-) (limited to 'src/com/android') diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java index 608d7f823..91cd742e7 100644 --- a/src/com/android/camera/CameraActivity.java +++ b/src/com/android/camera/CameraActivity.java @@ -1713,19 +1713,17 @@ public class CameraActivity extends Activity } else { mHasCriticalPermissions = false; } - if (!mHasCriticalPermissions) { - final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); - boolean isRequestShown = prefs.getBoolean(CameraSettings.KEY_REQUEST_PERMISSION, false); - if(!isRequestShown || !mHasCriticalPermissions) { - Log.v(TAG, "Request permission"); - Intent intent = new Intent(this, PermissionsActivity.class); - startActivity(intent); - SharedPreferences.Editor editor = prefs.edit(); - editor.putBoolean(CameraSettings.KEY_REQUEST_PERMISSION, true); - editor.apply(); - requestPermission = true; - } - } + final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); + boolean isRequestShown = prefs.getBoolean(CameraSettings.KEY_REQUEST_PERMISSION, false); + if(!isRequestShown || !mHasCriticalPermissions) { + Log.v(TAG, "Request permission"); + Intent intent = new Intent(this, PermissionsActivity.class); + startActivity(intent); + SharedPreferences.Editor editor = prefs.edit(); + editor.putBoolean(CameraSettings.KEY_REQUEST_PERMISSION, true); + editor.apply(); + requestPermission = true; + } return requestPermission; } diff --git a/src/com/android/camera/PermissionsActivity.java b/src/com/android/camera/PermissionsActivity.java index 6cc38f3c9..c16e95e82 100644 --- a/src/com/android/camera/PermissionsActivity.java +++ b/src/com/android/camera/PermissionsActivity.java @@ -196,7 +196,6 @@ public class PermissionsActivity extends Activity { private void handlePermissionsFailure() { new AlertDialog.Builder(this).setTitle(getResources().getString(R.string.camera_error_title)) .setMessage(getResources().getString(R.string.error_permissions)) - .setCancelable(false) .setOnKeyListener(new Dialog.OnKeyListener() { @Override public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) { -- cgit v1.2.3