Commit Graph

425 Commits

Author SHA1 Message Date
Arc Wang
9b69fd17bf [Wi-Fi] Fix data usage screen flash 1~2 times problem
Data loaders should be destroyed at onPause or
the APP list will be updated twice.

Bug: 146841747
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageListTest
Change-Id: Ic1b8ef443dd8e50777f1e3a16977add654748c54
2020-02-27 16:18:04 +08:00
Bonian Chen
dcd92af0a1 [Settings] Access ProxySubscriptionManager within DataUsage
Redirect some SubscriptionManager access to ProxySubscriptionManager.
This will reduce some access latency.

Bug: 141833767
Test: manual
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageSummaryPreferenceControllerTest
Change-Id: I2cb30dd0570a09543a13ca01cf054ba2d18d70d4
2020-02-10 23:49:53 +08:00
govenliu
634044dc0b [Wi-Fi] [a11y] In Wi-Fi data usage page, Talkback should also announce the Progress bar percentage instead of "Progress bar" only.
Add conent description for talkback to announce, if the progress bar is 50%, then before modification is "Progress bar", and after modification is "50% Progress bar".

Bug: 146811265
Test: Add following unit test case to test if content description is correct or not:
      createPref_progressBarShouldSetPercentageContentDescription().

Change-Id: I71483df8e12f08c4c8c96ab3964666bf97872a83
2020-01-30 07:18:18 +00:00
Bonian Chen
5cf0e1ba47 [Settings] DataUsage crash when no SIM inserted
Check for null pointer when looking up subcription id.

Bug: 148175728
Test: m RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageUtils
Change-Id: I4e893fc7de4a3292b3949860ebb59fbe52ac1a8f
2020-01-24 11:08:50 +08:00
changbetty
50d7506103 [Mainline] Removed non-formal API getAllSubscriptionInfoList to used in Settings
Bug: 147206736
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageSummaryPreferenceControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageUtilsTest
      make RunSettingsRoboTests ROBOTEST_FILTER=SettingsDumpServiceTest
Change-Id: Ie9c01afa2b128f8d296b160d3628ea1fb7176e59
2020-01-20 18:42:22 +08:00
Betty Chang
976dca2149 Merge "[Mainline] To use getActiveSubscriptionInfo() instead of get default subscription Info with data/sms/voice" 2020-01-09 08:49:48 +00:00
Automerger Merge Worker
dc047e5746 Merge "[Settings] Avoid from accessing createManageSubscriptionIntent(int)" am: d792d20001 am: 77cc57d9c2 am: c0b3551310
Change-Id: I340af8aee92498660f7bc65cdf5540d37a2fa148
2020-01-09 06:35:41 +00:00
Bonian Chen
d792d20001 Merge "[Settings] Avoid from accessing createManageSubscriptionIntent(int)" 2020-01-09 06:00:05 +00:00
Sarah Chin
f7d2691e1e Merge "Handle 5G meteredness in telephony framework" 2020-01-09 05:03:24 +00:00
Bonian Chen
31e07211d9 [Settings] Avoid from accessing createManageSubscriptionIntent(int)
Avoid from accessing
SubscriptionManager#createManageSubscriptionIntent(int).
Create a copy of source code into Settings.

Bug: 147334060
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageSummaryPreferenceControllerTest
Change-Id: Id44a6b214a8f5d378d7a536fbf984a0512e6a92d
2020-01-08 23:32:30 +08:00
Bonian Chen
90cb45e31c [Settings] Code refactor
1. Fix comments
2. Split test case

Bug: 147338143
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageListTest
Change-Id: I017a3ac8a716e69eb4d9c3e30e20363a215563a2
2020-01-08 14:30:13 +00:00
changbetty
a8d56184c3 [Mainline] To use getActiveSubscriptionInfo() instead of get default subscription Info with data/sms/voice
- getDefaultDataSubscriptionInfo()
   	- getActiveSubscriptionInfo(getDefaultDataSubscriptionId());
   - getDefaultSmsSubscriptionInfo()
   	- getActiveSubscriptionInfo(getDefaultSmsSubscriptionId());
   - getDefaultVoiceSubscriptionInfo()
   	- getActiveSubscriptionInfo(getDefaultVoiceSubscriptionId());

Bug: 147206736
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageUtilsTest
      make RunSettingsRoboTests ROBOTEST_FILTER=MobileDataSliceTest
      make RunSettingsRoboTests ROBOTEST_FILTER=MobileDataPreferenceControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=DefaultSubscriptionControllerTest

Change-Id: I7b5988b3c3068c12e242e123ebb54477093d37ad
2020-01-08 19:13:15 +08:00
Jason Chiu
2d609759cd Add preference click metric logs for some special cases
Bug: 137559984
Test: visual, robotest
Change-Id: If8624b49abcd0000487065160ce4a7ba861f234c
2020-01-02 17:45:23 +08:00
Automerger Merge Worker
778653fe71 Merge "[Settings] Replace TelephonyManager#from()" am: 19cebd9eca am: fb72a1094f am: 737783d5e4
Change-Id: I392268bd41ff76960107f137ae10ebf3dd151170
2019-12-23 03:04:51 +00:00
Bonian Chen
228dd34a8a [Settings] Replace TelephonyManager#from()
Replacing TelephonyManager#from() by public API.

Bug: 146752167
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageUtilsTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=CdmaListPreferenceTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=CdmaSubscriptionPreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=CdmaSystemSelectPreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=AutoSelectPreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=OpenNetworkSelectPagePreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=DataServiceSetupPreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=EnabledNetworkModePreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=MmsMessagePreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=PreferredNetworkModePreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=SettingsDumpServiceTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=MobileDataPreferenceControllerTest
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=MobileNetworkSettingsTest
Change-Id: If78ad37d4795d615b6f8db2f5687a28792a6764f
2019-12-23 01:00:38 +00:00
Automerger Merge Worker
107cd136a3 Merge "[Settings] Adopting public API" am: 8ddd0da0a1 am: 40d2a2dd8d am: 11fa77b023
Change-Id: I87282b78a9db6eb3611591f0c4702447b8470db4
2019-12-16 08:31:03 +00:00
Bonian Chen
1247771b88 [Settings] Adopting public API
Replace SubscriptionManager#getActiveSubscriptionInfoList(true) by
SubscriptionManager#getActiveSubscriptionInfoList() since they're
equivalent.

Bug: 146312766
Test: build pass
Change-Id: Iab8a141277e0199f75a3419527e15d63669224fc
2019-12-16 06:35:43 +00:00
Sarah Chin
cfaa9bd6a3 Handle 5G meteredness in telephony framework
Edit onSubscriptionOverride method for NetworkPolicyListener

Bug: 139070884
Bug: 139218397
Test: atest FrameworksTelephonyTests

Change-Id: Ided2e445d3758ebc6c4f4df63145f61f9a56f64e
Merged-In: Ided2e445d3758ebc6c4f4df63145f61f9a56f64e
2019-12-12 10:35:03 -08:00
Bonian Chen
5e65da0c2f [Settings] Apply proxy design to data usage
Enable proxy to subscription manager in data usage UI.

Bug: 141833767
Test: manual
make RunSettingsRoboTests -j ROBOTEST_FILTER=BillingCyclePreferenceTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=CellDataPreferenceTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageListTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageSummaryTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=DataUsageUtilsTest
make RunSettingsRoboTests -j ROBOTEST_FILTER=MobileDataEnabledListenerTest

Change-Id: Id119738dc16ece8767c088b9a0794997e4b0334f
2019-11-11 13:03:03 +08:00
Raff Tsai
4992919d95 Remove unused resources
Bug: 123794771
Test: rebuild, robolectric
Change-Id: I22f43220cc9ad4ec2074af425b0da75f59e470a4
2019-11-07 18:12:34 +08:00
Sarah Chin
94f1ad0bad Merge "5G meteredness for telephony framework" 2019-10-14 23:31:45 +00:00
Arc Wang
351ee3a882 [A11Y] Improve data usage chart TalkBack content
1. Set null content description for all labels of the chart.
2. Set 2 parts in the content description of the chart:
  I.  Brief description of the chart.
  II. Stats of the data usage.

Bug: 141093026
Test: ChartDataUsagePreferenceTest
      Manually listen to TalkBack speaking
Change-Id: I82cefd9987793f40a5bba5bf3ea5f4017da37640
2019-10-09 10:20:15 +08:00
Sarah Chin
0c518d5aab 5G meteredness for telephony framework
Bug: 139070884
Test: atest FrameworksTelephonyTests
Change-Id: I0c8e84f74fd1f69ffc7e1046819966fcb04732a6
2019-10-03 16:07:21 -07:00
Raff Tsai
129c98bba1 Remove summary loader in some fragments
- Summary Loader only works in injected items, but those fragments
are not injected to Settings UI. The SummaryLoader class them are
useless.

Bug: 141653158
Test: robolectric
Change-Id: I1ca0bf5a1f417b7fe86b28e96aff7d4aee2cf2d3
2019-10-01 10:02:26 +08:00
Raff Tsai
966fa01423 Use SettingsLib Indexable
- Use SettingsLib Indexable
- Directly use resource id in getPreferenceScreenResId

Bug: 135053028
Test: roboletric
Change-Id: I05f493b55e8b6e2091301e9231ba5615215618e6
2019-09-25 18:24:56 +08:00
Raff Tsai
ac3e0d0988 Directly use BaseIndexableProvider
- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function

Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
2019-09-24 00:35:52 +08:00
Neil Fuller
64eccbf9af Merge "Remove use of deprecated Time class" am: b3f8696c4d am: b83ddefb5c am: 42b55bc6f6
am: ac3d9d8641

Change-Id: I71bc0a1411abc6433016554e073da5868df3b952
2019-09-17 10:24:31 -07:00
Neil Fuller
4c77d00e34 Remove use of deprecated Time class
Remove a use of the deprecated Time class.

Bug: 16550209
Test: treehugger only
Change-Id: If97b0d8ea78a76d613652ab623c3a48f5aa9aabb
2019-09-17 13:53:17 +01:00
Raff Tsai
1f30b1cd67 Merge similar BaseSearchIndexProvider code together
Bug: 135053028
Test: robolectric, check search_index.db contains the same items
Change-Id: If3c18a170b0e671690df1fdf26e59a421d2c48cd
2019-09-12 11:09:09 +08:00
Sarah Chin
2136bc92fe Handle 5G meteredness in telephony framework
Edit onSubscriptionOverride method for NetworkPolicyListener

Bug: 139070884
Bug: 139218397
Test: atest FrameworksTelephonyTests

Change-Id: Ided2e445d3758ebc6c4f4df63145f61f9a56f64e
2019-08-30 14:27:51 +00:00
Sunny Shao
a47e7ddcc3 Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the DataSaverSummary page.

Fixes: 139393749
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.datausage
Change-Id: Ie229acd903eb24e369beef8bbf5ff0bdd9ce50d1
2019-08-14 13:52:08 +08:00
Sunny Shao
fb695782c5 Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the BillingCycleSettings page.

Fixes: 139099367
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.datausage
Change-Id: I408e433b3366a617b6c5a6fdb18f4830de4b8287
2019-08-08 16:25:14 +08:00
Lei Yu
ded55a1401 Use new API to build NetworkTemplate
This CL is built to make CBRS show correct data usage, by merging
all subscriberId under same groupuuid.

Bug: 133865338
Test: RunSettingsRoboTests
Change-Id: I3c717d0f1a1b95aa21c2ccefe4d1cefb4d854cb5
2019-05-31 10:19:17 -07:00
Lei Yu
22a9f539e9 Use NetworkTemplate to query data
So virtual carrier can get correct data with merged subscriberIds

Bug: 120566366
Test: RunSettingsLibRoboTests
Change-Id: I02abed77dffb55ef49fe0c4142f6f5b4a42ebe52
2019-05-13 13:04:46 -07:00
Lei Yu
9bc3273489 Update datausage for DataUsagePreferenceController
Data usage number was wrong because we didn't set correct
subId, this CL fixes this issue.

Bug: 132113657
Test: RunSettingsRoboTests
Change-Id: If7c9cf2f4709d9a8e5f9a154c02de9484800d6d5
2019-05-08 10:25:10 -07:00
Fan Zhang
71d793cc2a Format app data usage using IEC unit, not SI unit.
Fixes: 131924586
Test: visual
Change-Id: Iedbd15fb9c98a5c93089708e40175cbf5572eeda
2019-05-03 16:53:11 -07:00
Andrew Sapperstein
62a68d6edb Remove "data usage" from search.
Fixes: 131324402
Test: verified manually
Change-Id: Ib72902c3eaa1f2427e9c1c835ba2939f28cf7a0d
2019-04-26 10:23:02 -07:00
Yi-Ling Chuang
9a7ead8962 Hide filter spinner when data is loading.
When the filter spinner is initialized, set GONE to its visibility.
Only make it visible after network cycle data finishes loading to
avoid presenting an empty filter spinner.

Fixes: 130397929
Test: robotests
Change-Id: I740fdad35ec82bc0be386c24e53348917bf6bfba
2019-04-16 16:53:32 +08:00
Antony Sargent
77df63d371 Updates to data usage prefs
-Remove 'Data Usage' pref from Network & internet homepage
-Add 'Data warning & limit' to mobile network details page

Fixes: 127535879
Fixes: 130241963
Test: robotests

Change-Id: I28b3de34dcf11140762b4e3ee5b465f842ac48d4
2019-04-10 01:53:24 +00:00
cosmohsieh
976995fa36 [Passpointv2] Implement DataUsage header for Wi-Fi detail fragment
Change header to a data usage chart of the specified Wi-Fi network.

Bug: 124700353
Test: make RunSettingsRoboTests -j32 ROBOTEST_FILTER=com.android.settings
Change-Id: Ide08ffd5e97ced5fe54707562690155414598dac
2019-03-14 16:41:08 +08:00
Doris Ling
3d238da4b5 Show app usage data for the correct cycle.
- when launching the app data usage from the data usage list, pass the
info about the current cycle that the user is looking at, and select
the same cycle by default when the page is first launched to match the
data on the previous page.

Change-Id: Ic91bd8ee78db4d76551dff4b132c1b74d4b3c19d
Fixes: 123192721
Test: make RunSettingsRoboTests
2019-02-12 16:53:35 -08:00
Andrew Sapperstein
5efb70ac18 Separate OTA data usage from SYSTEM_UID.
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
2019-02-08 10:39:46 -08:00
Doris Ling
dddeb5f25e Use correct default subscription id to get default network template.
- when launching the app info page and no network template is defined in
the launch arguments, use the correct default data subscription id to
check whether mobile network template should be used or not.

Change-Id: If9341abf3416c775a2b7407c1d6d0b33f4aad67f
Fixes: 120098637
Test: make RunSettingsRoboTests
2019-02-07 14:41:45 -08:00
Doris Ling
97866f0b50 Use correct uid when querying usage data for specific user.
- the data usage list shows usage data for each app, and also the
aggregated data for work apps and other user. When user clicks on the
app item, we will shows the detail usage data for that item using the
app item key. However, if the app item is not for app but for user, the
key will not be the app uid, but a key built from the user id. So,
querying using the key will not get any data.
- for app item corresponding for user, need to sum up all usage data
for the uids associated with the user.

Change-Id: I1a185ee6b4d59e477f3a03cade97d85d6982e416
Fixes: 122200400
Test: make RunSettingsRoboTests
2019-01-30 13:51:28 -08:00
TreeHugger Robot
ea4eff318c Merge "Set correct network type when launching wifi usage data." 2019-01-29 02:12:41 +00:00
Doris Ling
079f6bd6b5 Set correct network type when launching wifi usage data.
- when launching wifi data usage, need to explicitly set the network
type to wifi. Otherwise, the data usage list will try to show data for
the default mobile data usage.

Change-Id: I819538d2c53664635bc1c2a721d6d7f6799c6123
Fixes: 123205630
Test: make RunSettingsRoboTests
2019-01-24 15:05:55 -08:00
Doris Ling
9c2556da09 Query correct subscription id for mobile data.
- On the Data usage settings page, we check for valid subscription id to
determine if we should show the mobile section. However, we are querying
the default subscription id, which will return the 1st id for any
subscription if there's no data subscription. Since this is for mobile
section, we should query the default data subscription id explicitly.

Change-Id: I08c80639d07477e486a2d9a10761e11df4c73b28
Fixes: 119881046
Test: make RunSettingsRoboTests
2019-01-24 14:21:18 -08:00
TreeHugger Robot
ac73d4e721 Merge "Add data usage header to mobile network details page" 2019-01-19 07:17:33 +00:00
Antony Sargent
625787b391 Add data usage header to mobile network details page
As a part of the work for subscriptions UI improvements, we want to show
data usage information at the top of the mobile network details page,
and those details need to be specific to the particular subscription
we're showing details for, even if that SIM isn't the current default
one. This is useful for seeing data usage across your SIMs in dual-SIM
devices.

This CL adapts our already existing DataUsageSummaryPreferenceController
class so that if can be used on any fragment instead of just the
DataUsageSummary one, and changes it to take an explicit subscription
id instead of assuming it should use the default one.

Bug: 122670283
Test: make RunSettingsRoboTests
Change-Id: I41e307b0f32580c73b08adec7cabf01c96d7e835
2019-01-17 21:50:27 -08:00
Fan Zhang
31b210017b Migrate all MetricsProto enums to SettingsEnums
Bug: 122855168
Test: rebuild
Change-Id: I962d9a71179f86b7cae9dc5e9a00e0aa1557dc76
2019-01-17 14:55:42 -08:00