Add initial preferences to App&Notification screen.

Bug: 31799948
Test: manual
Change-Id: I93f9d6562f51d37fcd78bada2f7c37d6b16daabb
This commit is contained in:
Fan Zhang
2016-10-20 17:15:50 -07:00
parent 7dde4cce0c
commit cdacd1df9a
6 changed files with 76 additions and 59 deletions

View File

@@ -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

View File

@@ -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">

View File

@@ -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>

View File

@@ -281,6 +281,8 @@ public class SettingsActivity extends SettingsDrawerActivity
"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 @@ public class SettingsActivity extends SettingsDrawerActivity
"com.android.settings.Settings.DateTimeDashboardAlias",
"com.android.settings.Settings.AccessibilityDashboardAlias",
"com.android.settings.Settings.AboutDeviceDashboardAlias",
};
private static final String[] ENTRY_FRAGMENTS = {

View File

@@ -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 @@ public class AdvancedAppSettings extends SettingsPreferenceFragment implements
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

View File

@@ -277,11 +277,6 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment
displayResourceTiles();
refreshDashboardTiles(TAG);
if (!mProgressiveDisclosureMixin.isCollapsed()
&& mProgressiveDisclosureMixin.shouldCollapse(getPreferenceScreen())) {
mProgressiveDisclosureMixin.collapse(getPreferenceScreen());
}
}
/**