diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index c9f140df68cb1..b881fe6d003b4 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -4522,4 +4522,7 @@
false
+
+
+ false
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 40aae9e4e0857..e3986fa96fb5f 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -4103,4 +4103,7 @@
+
+
+
diff --git a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
index e5c93a32ae901..b3c786ea8b02f 100644
--- a/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
+++ b/services/core/java/com/android/server/pm/permission/DefaultPermissionGrantPolicy.java
@@ -63,6 +63,7 @@ import android.util.SparseArray;
import android.util.TypedXmlPullParser;
import android.util.Xml;
+import com.android.internal.R;
import com.android.internal.util.ArrayUtils;
import com.android.internal.util.XmlUtils;
import com.android.server.LocalServices;
@@ -766,9 +767,14 @@ public final class DefaultPermissionGrantPolicy {
grantSystemFixedPermissionsToSystemPackage(pm, wearPackage, userId, PHONE_PERMISSIONS);
// Fitness tracking on watches
- grantPermissionsToSystemPackage(pm,
+ if (mContext.getResources().getBoolean(R.bool.config_trackerAppNeedsPermissions)) {
+ Log.d(TAG, "Wear: Skipping permission grant for Default fitness tracker app : "
+ + wearPackage);
+ } else {
+ grantPermissionsToSystemPackage(pm,
getDefaultSystemHandlerActivityPackage(pm, ACTION_TRACK, userId), userId,
SENSORS_PERMISSIONS, ALWAYS_LOCATION_PERMISSIONS);
+ }
}
// Print Spooler