summaryrefslogtreecommitdiffstats
path: root/AndroidManifest-common.xml
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2018-06-27 15:47:49 -0700
committerSunny Goyal <sunnygoyal@google.com>2018-07-02 11:16:04 -0700
commit7f920b8d5ed41375641cc991a037499443dc9098 (patch)
tree7e61f78359542d81d0f85ab1bffe4d7bf611b84a /AndroidManifest-common.xml
parent132bfb8a1f3d7697b98b9c1813f8fe2ddbfb5b36 (diff)
downloadandroid_packages_apps_Trebuchet-7f920b8d5ed41375641cc991a037499443dc9098.tar.gz
android_packages_apps_Trebuchet-7f920b8d5ed41375641cc991a037499443dc9098.tar.bz2
android_packages_apps_Trebuchet-7f920b8d5ed41375641cc991a037499443dc9098.zip
Cleaning up build rules to simplify customizing derivative projects
> Using {packageName} instead of hardcoding com.android.launcher3 in AndroidManifest.xml for strings which are dependent on packageName > Adding proguard rule to prevent obfuscating any overridable class > Making it easier to extend SettingsActivity by overriding the fragment class Change-Id: I5668c3f33b4cf20ad01d7f54b3d79cc0d268d391
Diffstat (limited to 'AndroidManifest-common.xml')
-rw-r--r--AndroidManifest-common.xml48
1 files changed, 48 insertions, 0 deletions
diff --git a/AndroidManifest-common.xml b/AndroidManifest-common.xml
index 211e1ff37..8f4d5bece 100644
--- a/AndroidManifest-common.xml
+++ b/AndroidManifest-common.xml
@@ -44,6 +44,28 @@
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES" />
+
+ <!--
+ Permissions required for read/write access to the workspace data. These permission name
+ should not conflict with that defined in other apps, as such an app should embed its package
+ name in the permissions. eq com.mypackage.permission.READ_SETTINGS
+ -->
+ <permission
+ android:name="${packageName}.permission.READ_SETTINGS"
+ android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
+ android:protectionLevel="signatureOrSystem"
+ android:label="@string/permlab_read_settings"
+ android:description="@string/permdesc_read_settings"/>
+ <permission
+ android:name="${packageName}.permission.WRITE_SETTINGS"
+ android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
+ android:protectionLevel="signatureOrSystem"
+ android:label="@string/permlab_write_settings"
+ android:description="@string/permdesc_write_settings"/>
+
+ <uses-permission android:name="${packageName}.permission.READ_SETTINGS" />
+ <uses-permission android:name="${packageName}.permission.WRITE_SETTINGS" />
+
<application
android:backupAgent="com.android.launcher3.LauncherBackupAgent"
android:fullBackupOnly="true"
@@ -118,5 +140,31 @@
android:name="com.android.launcher3.launcher_dump_provider"
android:value="com.android.launcher3.LauncherProvider" />
+ <!--
+ The settings provider contains Home's data, like the workspace favorites. The permissions
+ should be changed to what is defined above. The authorities should also be changed to
+ represent the package name.
+ -->
+ <provider
+ android:name="com.android.launcher3.LauncherProvider"
+ android:authorities="${packageName}.settings"
+ android:exported="true"
+ android:writePermission="${packageName}.permission.WRITE_SETTINGS"
+ android:readPermission="${packageName}.permission.READ_SETTINGS" />
+
+ <!--
+ The settings activity. To extend point settings_fragment_name to appropriate fragment class
+ -->
+ <activity
+ android:name="com.android.launcher3.SettingsActivity"
+ android:label="@string/settings_button_text"
+ android:theme="@android:style/Theme.DeviceDefault.Settings"
+ android:autoRemoveFromRecents="true">
+ <intent-filter>
+ <action android:name="android.intent.action.APPLICATION_PREFERENCES" />
+ <category android:name="android.intent.category.DEFAULT" />
+ </intent-filter>
+ </activity>
+
</application>
</manifest>