BluetoothPermissionActivity and DevicePickerFragment will send
broadcast to return the result to calling apps. As this broadcast
intent is from Settings with uid 1000, it will be sent to any
protected BroadcastReceivers in the device. It can make an attacker
send broadcast to protected BroadcastReceivers like factory reset intent
(android/com.android.server.MasterClearReceiver) via
BluetoothPermissionActivity or DevicePickerFragment.
This CL will not allow to set package name and class name to avoid
the attacker.
Bug: 179386960
Bug: 179386068
Test: make -j42 RunSettingsRoboTests and use test apk to manually test
to verify factory reset not started and no system UI notification.
Change-Id: Id27a78091ab578077853b8fbb97a4422cff0a158
(cherry picked from commit 8adedc6249)
(cherry picked from commit e21d06f6ee)
The root issue is that CharSequence is an interface.
String implements that interface, however, Spanned class
too which is a rich text format that can store HTML code.
The solution is enforce to use String type which won't include
any HTML function.
Test: Rebuilt apk and see the string without HTML style.
Bug: 179042963
Change-Id: I53b460b12da918e022d2f2934f114d205dbaadb0
Merged-In: I53b460b12da918e022d2f2934f114d205dbaadb0
(cherry picked from commit 0bf3c98b2f)
(cherry picked from commit 52f9039d5c)
* String ´bluetooth_select_a2dp_codec_type_help_info´
is set on the ´preference_widget_dialog_summary´-dialog
by default.
Test: make Settings, visual observation
Signed-off-by: Timi Rautamäki <timi.rautamaki@gmail.com>
Change-Id: I6d403f231797bcf5b10bf726cca4e128f4c517ea
* Use framework text colors for SwitchBar also on
dark mode to properly display disabled colors.
* Before the patch, a disabled SwitchBar on dark
mode would look same as an enabled one.
Test: open ´Notifications´-menu of a system app,
verify SwitchBar text is gray in dark mode.
Signed-off-by: Timi Rautamäki <timi.rautamaki@gmail.com>
Change-Id: Ia2fc5eb3f614d899cb5e519c235f1ea9b86a1527
For mobile, a old API: buildTemplateMobileAll doesn't includes the
merged wifi network, call the new API: buildTemplateCarrierMetered
to replace the old one.
PS: Not only usage functionality but also apply to network policy
control since the default policy is changing to use
new API: buildTemplateCarrier now.
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsDumpServiceTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageLibTest
Test: Manual Test, modify the mobile usage warming and limit bytes and
check the data via adb shell dumpsys netpolicy
Change-Id: I6fbec14e7be4dc4b5c2fd3659a801521c81b233c
As I no longer expect to be working on security-related settings, move
myself to the emeritus section.
Bug: 187395769
Test: N/A
Change-Id: Ic91dd36f6de39ef79f1ced90083e1c5c7836c651
For wifi, a old API: buildTemplateWifiWildcard will includes the merged
wifi which is included to mobile usage. It should not double count
again. Call new API: buildTemplateWifi with
NetworkId: NetworkTemplate.WIFI_NETWORKID_ALL
and null subscriberId to get non-merged wifi usage.
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AppDataUsageTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AppDataUsagePreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageSummaryTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageSummaryPreferenceTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageSummaryPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageUtilsTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=NetworkProviderSettingsTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=SettingsDumpServiceTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiSettingsTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DataUsageInfoControllerTest
Test: Manual Test, wifi data usage count correctly.
Bug: 176396812
Merged-In: Ia4d8fa67ea3cb75c2d35be9ab60e5c5ffa391ffb
Change-Id: Ia4d8fa67ea3cb75c2d35be9ab60e5c5ffa391ffb
The value of PRIVATE_DNS_MODE_* has changed from String to int and
ConnectivityManager provides 2 new APIs to set and get private
DNS mode, the caller can use them directly and doesn't need to update
Settings by itself.
Bug: 185311744
Test: 1. make RunSettingsRoboTests ROBOTEST_FILTER=PrivateDnsModeDialogPreferenceTest
2. make RunSettingsRoboTests ROBOTEST_FILTER=PrivateDnsPreferenceControllerTest
Change-Id: I47706efe9c53a00438fdec97fda244638cecb3dc
Merged-In: I47706efe9c53a00438fdec97fda244638cecb3dc
(Cherry-picked from ag/14230401)
* Add a title to device picker fragment in order to
move the progressbar to the correct place
Test: make Settings, share a file via Bluetooth,
verify progressbar is properly placed
Change-Id: I2fcf293ed2d70d123d65cf76051a6d7d745a773b
Signed-off-by: Timi Rautamäki <timi.rautamaki@gmail.com>
The resource id 'user_dict_settings_summary' was used to display
summary text of personal dictionary in Froyo. But from GingerBread it
is not used and an empty string is set.
Display above resource as summary text of personal dictionary entry.
Bug: 152970252
Test: Manual
Change-Id: Ib2d6abe1c128d2c7519be2017880cd2d53c026f3
NetworkTypeController set OVERRIDE_NETWORK_TYPE_NR_ADVANCED when
device connect NR and frequency is mmWave.
Bug: 179443240
Bug: 179453836
Test: atest frameworks/opt/telephony/src/java/com/android/internal/telephony/NetworkTypeController.java
atest packages/apps/Settings/tests/unit/src/com/android/settings/deviceinfo/simstatus/SimStatusDialogControllerTest.java
Change-Id: Ib95f6a012c0f725335f46e17b8414005a76ad5c9
calling mContext.unregisterReceiver on an unregistered broadcast
receiver will result in an exception. To make the
SubscriptionsChangeListener safe from this kind of error, add a check to
see whether start has been called before implementing stop's
functionality.
Bug: 184662284
Bug: 184521296
Test: atest -c SettingsUnitTests
Change-Id: Ic13911ee7573666f5d42ab4612c025968984ba47