Add initial preferences to App&Notification screen.
Bug: 31799948
Test: manual
Change-Id: I93f9d6562f51d37fcd78bada2f7c37d6b16daabb
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 5721c74..c987ec0 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -3327,6 +3327,43 @@
android:value="com.android.settings.category.ia.device" />
</activity-alias>
+ <activity-alias android:name="ManageApplicationsDashboardAlias"
+ android:targetActivity="Settings$ManageApplicationsActivity">
+ <intent-filter android:priority="200">
+ <action android:name="com.android.settings.action.SETTINGS" />
+ </intent-filter>
+ <meta-data android:name="com.android.settings.category"
+ android:value="com.android.settings.category.ia.apps" />
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.applications.ManageApplications" />
+ <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+ android:value="true" />
+ </activity-alias>
+
+ <activity-alias android:name="AppNotificationDashboardAlias"
+ android:targetActivity="Settings$NotificationAppListActivity">
+ <intent-filter android:priority="150">
+ <action android:name="com.android.settings.action.SETTINGS"/>
+ </intent-filter>
+ <meta-data android:name="com.android.settings.category"
+ android:value="com.android.settings.category.ia.apps"/>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.applications.NotificationApps"/>
+ </activity-alias>
+
+ <activity-alias android:name="ConfigureNotificationDashboardAlias"
+ android:targetActivity="Settings$ConfigureNotificationSettingsActivity">
+ <intent-filter android:priority="120">
+ <action android:name="com.android.settings.action.SETTINGS"/>
+ </intent-filter>
+ <meta-data android:name="com.android.settings.category"
+ android:value="com.android.settings.category.ia.apps"/>
+ <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+ android:value="com.android.settings.notification.ConfigureNotificationSettings" />
+ <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
+ android:value="true" />
+ </activity-alias>
+
<!-- End of information architecture host activities -->
<service
diff --git a/res/xml/advanced_apps.xml b/res/xml/advanced_apps.xml
index 405d5af..7b1af10 100644
--- a/res/xml/advanced_apps.xml
+++ b/res/xml/advanced_apps.xml
@@ -19,10 +19,12 @@
xmlns:settings="http://schemas.android.com/apk/res/com.android.settings"
android:key="applications_settings">
- <PreferenceScreen
+ <Preference
android:key="manage_perms"
android:title="@string/app_permissions"
- settings:keywords="@string/keywords_app_permissions" />
+ settings:keywords="@string/keywords_app_permissions">
+ <intent android:action="android.intent.action.MANAGE_PERMISSIONS"/>
+ </Preference>
<PreferenceCategory
android:title="@string/default_apps_title">
diff --git a/res/xml/app_and_notification.xml b/res/xml/app_and_notification.xml
index 5da902f..4aa109e 100644
--- a/res/xml/app_and_notification.xml
+++ b/res/xml/app_and_notification.xml
@@ -15,6 +15,16 @@
limitations under the License.
-->
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
+
+ <Preference
+ android:key="manage_perms"
+ android:title="@string/app_permissions"
+ android:order="-130"
+ settings:keywords="@string/keywords_app_permissions">
+ <intent android:action="android.intent.action.MANAGE_PERMISSIONS"/>
+ </Preference>
</PreferenceScreen>
\ No newline at end of file
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 5452f91..11f8105 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -281,6 +281,8 @@
"com.android.settings.Settings.SecurityDashboardAlias",
Settings.SystemDashboardActivity.class.getName(),
Settings.SupportDashboardActivity.class.getName(),
+ // Home page > Apps & Notifications
+ "com.android.settings.Settings.ManageApplicationsDashboardAlias",
// Home page > Network & Internet
"com.android.settings.Settings.WifiDashboardAlias",
"com.android.settings.Settings.DataUsageDashboardAlias",
@@ -289,7 +291,6 @@
"com.android.settings.Settings.DateTimeDashboardAlias",
"com.android.settings.Settings.AccessibilityDashboardAlias",
"com.android.settings.Settings.AboutDeviceDashboardAlias",
-
};
private static final String[] ENTRY_FRAGMENTS = {
diff --git a/src/com/android/settings/applications/AdvancedAppSettings.java b/src/com/android/settings/applications/AdvancedAppSettings.java
index db9d8de..59c1fbe 100644
--- a/src/com/android/settings/applications/AdvancedAppSettings.java
+++ b/src/com/android/settings/applications/AdvancedAppSettings.java
@@ -15,57 +15,48 @@
*/
package com.android.settings.applications;
-import android.content.BroadcastReceiver;
import android.content.Context;
-import android.content.Intent;
-import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.SearchIndexableResource;
-import android.support.v7.preference.Preference;
+
import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settings.R;
-import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
-import com.android.settings.applications.PermissionsSummaryHelper.PermissionsResultCallback;
+import com.android.settings.core.PreferenceController;
+import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
-import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-public class AdvancedAppSettings extends SettingsPreferenceFragment implements
- Indexable {
+public class AdvancedAppSettings extends DashboardFragment {
static final String TAG = "AdvancedAppSettings";
- private static final String KEY_APP_PERM = "manage_perms";
- private static final String KEY_APP_DOMAIN_URLS = "domain_urls";
- private static final String KEY_HIGH_POWER_APPS = "high_power_apps";
- private static final String KEY_SYSTEM_ALERT_WINDOW = "system_alert_window";
- private static final String KEY_WRITE_SETTINGS_APPS = "write_settings_apps";
-
- private Preference mAppPermsPreference;
- private Preference mAppDomainURLsPreference;
- private Preference mHighPowerPreference;
- private Preference mSystemAlertWindowPreference;
- private Preference mWriteSettingsPreference;
-
- private BroadcastReceiver mPermissionReceiver;
-
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
- addPreferencesFromResource(R.xml.advanced_apps);
+ }
- Preference permissions = getPreferenceScreen().findPreference(KEY_APP_PERM);
- permissions.setIntent(new Intent(Intent.ACTION_MANAGE_PERMISSIONS));
+ @Override
+ protected String getCategoryKey() {
+ return "";
+ }
- mAppPermsPreference = findPreference(KEY_APP_PERM);
- mAppDomainURLsPreference = findPreference(KEY_APP_DOMAIN_URLS);
- mHighPowerPreference = findPreference(KEY_HIGH_POWER_APPS);
- mSystemAlertWindowPreference = findPreference(KEY_SYSTEM_ALERT_WINDOW);
- mWriteSettingsPreference = findPreference(KEY_WRITE_SETTINGS_APPS);
+ @Override
+ protected String getLogTag() {
+ return TAG;
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.advanced_apps;
+ }
+
+ @Override
+ protected List<PreferenceController> getPreferenceControllers(Context context) {
+ return null;
}
@Override
@@ -73,25 +64,6 @@
return MetricsEvent.APPLICATIONS_ADVANCED;
}
- private final PermissionsResultCallback mPermissionCallback = new PermissionsResultCallback() {
- @Override
- public void onAppWithPermissionsCountsResult(int standardGrantedPermissionAppCount,
- int standardUsedPermissionAppCount) {
- if (getActivity() == null) {
- return;
- }
- mPermissionReceiver = null;
- if (standardUsedPermissionAppCount != 0) {
- mAppPermsPreference.setSummary(getContext().getString(
- R.string.app_permissions_summary,
- standardGrantedPermissionAppCount,
- standardUsedPermissionAppCount));
- } else {
- mAppPermsPreference.setSummary(null);
- }
- }
- };
-
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
new BaseSearchIndexProvider() {
@Override
diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java
index 9ab8cf4..37bc447 100644
--- a/src/com/android/settings/dashboard/DashboardFragment.java
+++ b/src/com/android/settings/dashboard/DashboardFragment.java
@@ -277,11 +277,6 @@
displayResourceTiles();
refreshDashboardTiles(TAG);
-
- if (!mProgressiveDisclosureMixin.isCollapsed()
- && mProgressiveDisclosureMixin.shouldCollapse(getPreferenceScreen())) {
- mProgressiveDisclosureMixin.collapse(getPreferenceScreen());
- }
}
/**