summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYiwei Zhang <zzyiwei@google.com>2018-12-28 11:38:11 +0800
committerYiwei Zhang <zzyiwei@google.com>2019-01-05 05:55:39 +0800
commitc81a03b60e4f466fe78480ae87652e9bc6014ae9 (patch)
tree54b5e6ed49506883b0abc30cc92019a463e8306d
parentdf495130c96dfc32e00966f72db1ef4d53f6d9b0 (diff)
downloadpackages_apps_Settings-c81a03b60e4f466fe78480ae87652e9bc6014ae9.tar.gz
packages_apps_Settings-c81a03b60e4f466fe78480ae87652e9bc6014ae9.tar.bz2
packages_apps_Settings-c81a03b60e4f466fe78480ae87652e9bc6014ae9.zip
GUP: Add stub UI
Bug: 119221883 Test: make RunSettingsRoboTests ROBOTEST_FILTER=GupDashboardTest Change-Id: I1f7cc66790e1d1e1de5113e28a055ec5d1679013
-rw-r--r--res/values/strings.xml5
-rw-r--r--res/xml/development_settings.xml6
-rw-r--r--res/xml/gup_settings.xml20
-rw-r--r--src/com/android/settings/development/gup/GupDashboard.java50
-rw-r--r--tests/robotests/assets/grandfather_not_implementing_index_provider1
-rw-r--r--tests/robotests/src/com/android/settings/development/gup/GupDashboardTest.java54
6 files changed, 136 insertions, 0 deletions
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 089ade9a82..f0a57abf8d 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -10049,6 +10049,11 @@
<!-- UI debug setting: app selected to use Game Update Package [CHAR LIMIT=NONE] -->
<string name="gup_dev_opt_in_app_set"><xliff:g id="app_name" example="com.company.app">%1$s</xliff:g></string>
+ <!-- Title for Game Update Packages dashboard where developers can configure apps to use GUP or not [CHAR LIMIT=50] -->
+ <string name="gup_dashboard_title">Game Update Packages Preferences</string>
+ <!-- Summary for Game Update Packages dashboard [CHAR LIMIT=50] -->
+ <string name="gup_dashboard_summary">Modify Game Update Packages settings</string>
+
<!-- Slices Strings -->
<!-- Summary text on a card explaining that a setting does not exist / is not supported on the device [CHAR_LIMIT=NONE]-->
diff --git a/res/xml/development_settings.xml b/res/xml/development_settings.xml
index 214c00c5bb..2eedca5572 100644
--- a/res/xml/development_settings.xml
+++ b/res/xml/development_settings.xml
@@ -191,6 +191,12 @@
android:title="@string/enable_gpu_debug_layers"
android:summary="@string/enable_gpu_debug_layers_summary" />
+ <Preference
+ android:key="gup_dashboard"
+ android:title="@string/gup_dashboard_title"
+ android:summary="@string/gup_dashboard_summary"
+ android:fragment="com.android.settings.development.gup.GupDashboard" />
+
</PreferenceCategory>
<PreferenceCategory
diff --git a/res/xml/gup_settings.xml b/res/xml/gup_settings.xml
new file mode 100644
index 0000000000..6344adbbe6
--- /dev/null
+++ b/res/xml/gup_settings.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright 2019 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+
+<PreferenceScreen
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:title="@string/gup_dashboard_title" />
diff --git a/src/com/android/settings/development/gup/GupDashboard.java b/src/com/android/settings/development/gup/GupDashboard.java
new file mode 100644
index 0000000000..674a0a90d0
--- /dev/null
+++ b/src/com/android/settings/development/gup/GupDashboard.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.development.gup;
+
+import android.content.Context;
+
+import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
+import com.android.settings.dashboard.DashboardFragment;
+import com.android.settingslib.core.AbstractPreferenceController;
+
+import java.util.List;
+
+public class GupDashboard extends DashboardFragment {
+ private static final String TAG = "GupDashboard";
+
+ @Override
+ public int getMetricsCategory() {
+ return MetricsProto.MetricsEvent.SETTINGS_GUP_DASHBOARD;
+ }
+
+ @Override
+ protected String getLogTag() {
+ return TAG;
+ }
+
+ @Override
+ protected int getPreferenceScreenResId() {
+ return R.xml.gup_settings;
+ }
+
+ @Override
+ public int getHelpResource() {
+ return 0;
+ }
+}
diff --git a/tests/robotests/assets/grandfather_not_implementing_index_provider b/tests/robotests/assets/grandfather_not_implementing_index_provider
index 447de0049d..2622eb320e 100644
--- a/tests/robotests/assets/grandfather_not_implementing_index_provider
+++ b/tests/robotests/assets/grandfather_not_implementing_index_provider
@@ -28,6 +28,7 @@ com.android.settings.bluetooth.DevicePickerFragment
com.android.settings.datausage.AppDataUsage
com.android.settings.datausage.DataUsageList
com.android.settings.datetime.timezone.TimeZoneSettings
+com.android.settings.development.gup.GupDashboard
com.android.settings.deviceinfo.PrivateVolumeSettings
com.android.settings.deviceinfo.PublicVolumeSettings
com.android.settings.deviceinfo.StorageProfileFragment
diff --git a/tests/robotests/src/com/android/settings/development/gup/GupDashboardTest.java b/tests/robotests/src/com/android/settings/development/gup/GupDashboardTest.java
new file mode 100644
index 0000000000..17278ef08e
--- /dev/null
+++ b/tests/robotests/src/com/android/settings/development/gup/GupDashboardTest.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.development.gup;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import com.android.internal.logging.nano.MetricsProto;
+import com.android.settings.R;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.robolectric.RobolectricTestRunner;
+
+@RunWith(RobolectricTestRunner.class)
+public class GupDashboardTest {
+ private GupDashboard mDashboard;
+
+ @Before
+ public void setUp() {
+ mDashboard = new GupDashboard();
+ }
+
+ @Test
+ public void getHelpResource_shouldReturn0() {
+ assertThat(mDashboard.getHelpResource()).isEqualTo(0);
+ }
+
+ @Test
+ public void getMetricesCategory_shouldReturnGupDashboard() {
+ assertThat(mDashboard.getMetricsCategory())
+ .isEqualTo(MetricsProto.MetricsEvent.SETTINGS_GUP_DASHBOARD);
+ }
+
+ @Test
+ public void getPreferenceScreen_shouldReturnGupSettings() {
+ assertThat(mDashboard.getPreferenceScreenResId())
+ .isEqualTo(R.xml.gup_settings);
+ }
+}