Use the "July 13, 2019" or similar to display if the value is a valid
date data.
Bug: 137089104
Test: visual test & robotest
Change-Id: Ie4bab2617c1cd6fd956bf6d1a22ce96e6b0b58d0
Added a module licenses option that lives in Legal information settings.
Clicking that option opens module licenses page, which displays every
module by name, filtered to exclude modules without license files.
Clicking a module in the list opens HTMLViewer.
Created ModuleLicensesProvider, a new ContentProvider that serves as a
redirect for the Uris sent to HTMLViewer so that they open asset files.
In order to provide the redirect, the provider will write the license file
to a file in Settings' cache directory when the license does not exist
in the cache or is outdated. The provider then opens that cached file.
Fixes: 135183006
Test: robotests
Change-Id: I7d69da34780c8c4efb150d0c0411078c12bc80d8
We shadow Fragment as workaround to prevent some errors
in onCreate for fixing b/135086559.
This CL tried to not mock everything for fragment.
We need to use correct way to create fragment lifecycle,
so it can avoid some errors likes b/135086559.
Test: atest MyDeviceInfoFragmentTest
Fixes: 135086559
Change-Id: I0d650bc700f570114861081d537f83a3ba14147b
Fragment.oncreate() causes an IllegalStateException. We use a
ShadowFragment to stop the calling sequence.
Fixes: 135086559
Test: robotest
Change-Id: I601e0f2513f826b0b7749cb2c013b7e4c0a94a33
Check if the SubscriptionInfo list is empty to avoid the IndexOutOfBoundsException.
Fixes: 133258244
Test: maunal & robotest
Change-Id: I837f6761ba2b53823f0126f734f65875a30e34dd
In rare cases the SignalStrength we get for a SIM can be null, which
wasn't checked for in this code. This CL adds a null check and fixes the
tests so it's possible to verify the fix (one of the methods that would
have crashed was being spy'd over unnecessarily).
Fixes: 132570076
Test: make RunSettingsRobotests
Change-Id: Ifdec24f184ee2d93e5e242eb2c20695249992fc6
When no SIM, we can't get active subscription info.
So current code will not create TelephonyManager and cause IMEI not
retrieved.
Create TelephonyManager with default if no subscription info.
Bug: 132215720
Test: test with SIM and without SIM to check SIM status UI and atest ImeiInfoDialogControllerTest pass
Change-Id: Iaeb932ea66a6bee77136251941cca657984e456f
The network name in sim status dialog is not the same as the one in the
about page. This CL use the carrier text which is resolved in
ServiceStateTracker as the network name, this keep the network name sync
with the status bar and the summary of sim status in the about page.
Bug: 31784938
Test: build & manual test
Change-Id: Ia741baabaa98ae447dbedf9e28fd2fda222e6d2e
getActiveSubscriptionInfoList() returns a list of active subscription.
It doesn't 1:1 mapping with slotId. So it is not correct to use slotId
as index to get subscriptioninfo from list.
Use framework interface getActiveSubscriptionInfoForSimSlotIndex() to
get subscriptioninfo per slotid instead.
Fixes: 129038597
Test: robotest
Change-Id: If4277c425e6145e0e3ba716551d0dce46cdb61ab
IMEI information will be overrided by getSummary() and cause second slot IMEI is
oerrided by first slot.
Avoid IMEI is override by first slot information.
Bug: 131124169
Test: Test with dual SIM device and atest
ImeiInfoPreferenceControllerTest, ImeiInfoDialogControllerTest pass
Change-Id: Ia0a028aa0103867f42fff610129cf7ce2d3910b7
There are 2 build number tiles in settings: Android version -> Build
number and About phone -> build number.
The way we index breadcrumb for each slice is making some client
confused. So this change moves the slice capability from Androi
version>BuildNumber to About phone.
Fixes: 130652710
Test: reindex, robotest
Change-Id: I9054d0db124b706e7984cd3d19774bb604bd7fd3
Prior to this CL, Process.OTA_UPDATE_UID was included with SYSTEM_UID
for the purposes of per-app data usage in the DataUsageList. With this
change, it is now separated into its own category.
This change also deletes the duplicate ic_system_update* icons and
moves the one implementation into SettingsLib.
Fixes: 70640191
Test: manually verified locally that there is an item in the list
with the proper title. Required setting up a custom OTA for my
test device.
Change-Id: Iecc45648f68a12c9f8e2370577ab017863e7fcb2
- in about phone settings, only show the mainline module version if the
feature is enabled.
Bug: 122615240
Test: make RunSettingsRoboTests
Change-Id: If872859755dade7e601a47eb387d10c3b247d06e
- Displaying/hiding Emergency info, branded account, device header
widget are now driven by config flags
- Also refactored controllers to use BasePreferenceController
Change-Id: Ie601ebf689e0744c6a05a2cca5513fa43ef355e0
Fixes: 119607340
Test: robotests
Replace getActiveSubscriptionInfoList() with
getActiveSubscriptionInfoList(true) so that settings will not show
hidden subscriptions to the user in various pages.
Bug: 121396526
Test: manual
Change-Id: I717999fed7d3a5a037914239694bef52df7c6207
Copy the device version number to clipboard for Copyable.
Change-Id: Ibb687be442dd702c1197c7e8295fac5b914a7047
Fixes: 121463656
Test: manual and robotests
- API change in AndroidX Preference causes a build breakage
- Apply explicit casting for the new API interface
Test: robotest
Fixes: 121109361
Change-Id: If3e7be9e53c7860252523700d6721ae4956db68a
The resources available to tests are now exactly the merged resources
located in the APK under test.
Bug: 74359828
Test: make -j56 RunSettingsRoboTests
Change-Id: I050db81a92decefea23314b5ec7a62f77ff4bb2b
- change from using device model to device name for the top level about
phone preference summary.
Change-Id: I6c1891f3867f55cf1501baf76ea147e2df49111e
Fixes: 119157622
Test: make RunSettingsRoboTests
It's faster than tile injection. The fragment comes from Settings
itself, we don't have to use to injection.
Bug: 118168552
Test: robotest
Change-Id: If6a79dd73f8a51dbb21338a40f22dc8b8f8c8cb8
Test: Unit test + manual test: Mount and unmount stubvolume in ARC++,
check settings show the device correctly and could browse it using
DocumentsUI.
Bug: 110380403
Change-Id: I96fc82e731225776ac7070ef035687f83da94245
When the adopted media storage is ejected, migrate operation from
adopted storage to internal storage always fails.
This CL makes the migrate option menu invisible when the source
volume of migration is not mounted and not accessible.
Bug: 117178027
Test: Settings robotests & manual
Change-Id: I8bfc9de552a8daf861315a5e46ee520ede14dd81
- Let controller of phoner number extends BasePreferenceController,
so it can be supported showing slice view by SettingsSliceProvider.
Test: make RunSettingsRoboTests
Bug: 74900516
Change-Id: Id98e6aac981025159a0530c6e0709ba0f2ebcd15