Camera2: Request for ACCESS_FINE_LOCATION permission

 * ACCESS_COARSE_LOCATION only allows to access approximate location.

Change-Id: Ic512f574b32e01baa115a0a784f437c8225b85c3
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 80e3fec..06435ad 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -8,7 +8,6 @@
         android:minSdkVersion="19"
         android:targetSdkVersion="1000" />
 
-    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java
index 5d124e2..8923eb9d 100644
--- a/src/com/android/camera/CameraActivity.java
+++ b/src/com/android/camera/CameraActivity.java
@@ -1955,7 +1955,7 @@
         }
         if (!mHasCriticalPermissions || (mSettingsManager.getBoolean(
                 SettingsManager.SCOPE_GLOBAL, Keys.KEY_RECORD_LOCATION) &&
-                (checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION)
+                (checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION)
                    != PackageManager.PERMISSION_GRANTED) &&
                 !mSettingsManager.getBoolean(SettingsManager.SCOPE_GLOBAL,
                     Keys.KEY_HAS_SEEN_PERMISSIONS_DIALOGS))) {
diff --git a/src/com/android/camera/PermissionsActivity.java b/src/com/android/camera/PermissionsActivity.java
index 895d316..c0f7359 100644
--- a/src/com/android/camera/PermissionsActivity.java
+++ b/src/com/android/camera/PermissionsActivity.java
@@ -117,7 +117,7 @@
 
         if (mSettingsManager.getBoolean(SettingsManager.SCOPE_GLOBAL,
             Keys.KEY_RECORD_LOCATION)
-                && (checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION)
+                && (checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION)
                 != PackageManager.PERMISSION_GRANTED)) {
             mNumPermissionsToRequest++;
             mShouldRequestLocationPermission = true;
@@ -152,7 +152,7 @@
             permissionsRequestIndex++;
         }
         if (mShouldRequestLocationPermission) {
-            permissionsToRequest[permissionsRequestIndex] = Manifest.permission.ACCESS_COARSE_LOCATION;
+            permissionsToRequest[permissionsRequestIndex] = Manifest.permission.ACCESS_FINE_LOCATION;
             mIndexPermissionRequestLocation = permissionsRequestIndex;
         }
 
diff --git a/src/com/android/camera/app/FirstRunDialog.java b/src/com/android/camera/app/FirstRunDialog.java
index 58e1fcb..35330fa 100644
--- a/src/com/android/camera/app/FirstRunDialog.java
+++ b/src/com/android/camera/app/FirstRunDialog.java
@@ -210,11 +210,11 @@
     }
 
     private void checkLocationPermission() {
-        if (mContext.checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION)
+        if (mContext.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION)
                 != PackageManager.PERMISSION_GRANTED) {
             Activity activity = (Activity) mContext;
             activity.requestPermissions(
-                new String[] {Manifest.permission.ACCESS_COARSE_LOCATION},
+                new String[] {Manifest.permission.ACCESS_FINE_LOCATION},
                 PERMISSION_REQUEST_CODE);
             mSettingsManager.set(SettingsManager.SCOPE_GLOBAL,
                 Keys.KEY_HAS_SEEN_PERMISSIONS_DIALOGS, true);
diff --git a/src/com/android/camera/settings/CameraSettingsActivity.java b/src/com/android/camera/settings/CameraSettingsActivity.java
index 6327cfb..2b588e1 100644
--- a/src/com/android/camera/settings/CameraSettingsActivity.java
+++ b/src/com/android/camera/settings/CameraSettingsActivity.java
@@ -353,9 +353,9 @@
             if (key.equals(Keys.KEY_RECORD_LOCATION)
                     && sharedPreferences.getString(key, "0").equals("1")) {
                 Context context = this.getActivity().getApplicationContext();
-                if (context.checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION)
+                if (context.checkSelfPermission(Manifest.permission.ACCESS_FINE_LOCATION)
                         != PackageManager.PERMISSION_GRANTED) {
-                    requestPermissions(new String[] {Manifest.permission.ACCESS_COARSE_LOCATION},
+                    requestPermissions(new String[] {Manifest.permission.ACCESS_FINE_LOCATION},
                         PERMISSION_REQUEST_CODE);
                 }
             }