- When reseting mobile network, subscription info will also be reset.
It has a racing bewteen showing the UI and udpating the subscription
info.
- Register a receiver to receive subscription change to dynamically
update the UI
Flag: EXEMPT bugfix
Bug: 362382003
Test: Manual test.
Change-Id: I16811503685a6b82eee5ecf3fa725255d356a765
The CL temporarily removes RILD reset in the flow and plans to bring it back when a more reliable solution is available.
Resetting RID in the flow may cause device failure to camp on the default cellular network.
The interface used to reset RILD in the flow was designed for telephony process silent restart feature. The implementation doesn't work well together with other reset options (e.g. nvResetConfig).
Bug: 356272264
Test: Execute feature test plan, including regression test
Flag: com.android.internal.telephony.flags.reset_mobile_network_settings
Change-Id: I955bcb0b151f27dc73c03a580c0144bea9e3bfa3
Before this change,
- eSIM will be erased twice, one with result callback and one without
result callback.
- During reset, ResetNetworkConfirm could interrupted by subscription
invalid event, which happens during reset.
After this change,
- eSIM will be erased only once, result callback is registered
separately.
- Explicit exit the page when reset finish, and ignore the subscription
invalid event after reset started.
Bug: 328293508
Flag: EXEMPT bug fix
Test: manual - dry run the reset
Test: ResetNetworkConfirmTest
Change-Id: I51395a556b1c8775192d5897a87f13046c042578
If the user is reseting mobile network settings and have all these
conditions:
- No Wi-fi
- Has check to delete all eSIMs
- Has a least one RAC sim carrier
Then show the warning dialogue.
Test: make, manually test, atest SubSettingLauncherTest, atest ResetNetworkTest, atest SubscriptionUtilTest
Bug: 328649510
Merged-In: I47d9b868b649b259d5e4008ec742317d2cb7cf51
Change-Id: I47d9b868b649b259d5e4008ec742317d2cb7cf51
(cherry picked from commit 147cc19b53)
If the user is reseting mobile network settings and have all these
conditions:
- No Wi-fi
- Has check to delete all eSIMs
- Has a least one RAC sim carrier
Then show the warning dialogue.
Test: make, manually test, atest SubSettingLauncherTest, atest ResetNetworkTest, atest SubscriptionUtilTest
Bug: 328649510
Change-Id: I47d9b868b649b259d5e4008ec742317d2cb7cf51
This reverts commit 19d1d3d15d.
Reason for revert: revert it because this is not the root cause.
bug: 316867690
Change-Id: I0f168dbb64044aa720202af7b1040afd4f028c9c
This CL introduces two more steps to restart Phone process and RILD
during the Reset mobile network flow by the help of the
TelephonyContentProvider which has been used by Pixel Adaptive
Connectivity Services ("SCONE") for a while.
The additional reset options can resolve issues like resources leak
and internal state stuck, effectively recover telephony stack into
fresh state.
The reset options are performed in the background and have no impact
on UX of the reset flow.
Bug: 271921464
Test: ResetNetworkOperationBuilderTest
Test: Feature test with both flag on and off
Change-Id: If09d20d79e908dd43f3f654fb7cca7f713b7f03a
This reverts commit cf0501e4d7.
Reason for revert: b/317462033, it seems a flaky but revert it first.
Change-Id: Ie1d5e279cca6477fc17d8c27c1ecda8d7a6b2553
Reset the IMS stack for the specified subscription
with the help of API TelephonyManager#resetIms.
Bug: 271921464
Test: ResetNetworkOperationBuilderTest
Change-Id: I61575f18bcc300f362000dc7f4257b9d794b6b69
Hide SIM remove UI based on configuraion.
Bug: 240515161
Test: test cases and local testing
Merged-In: Iea40b89733cc75a41f960fecb2ac24177a4cbd3d
Change-Id: I8f0c1d53c4fe6e30280f2b7ae8f694cd27056e36
Hide SIM remove UI based on configuraion.
Bug: 240515161
Test: test cases and local testing
Merged-In: Iea40b89733cc75a41f960fecb2ac24177a4cbd3d
Change-Id: I866b2dd566ffa9953f2a83aa3dcb32440390898a
The subscriptionInfo.getCarrierName may be a null, so adding the null
checking.
Bug: 236064286
Test: build pass
Change-Id: I8f6f5ac725d6dd552ac2626725e44f52dcbf6c32
When SIM removed, the network reset confirm UI no longer represents
the wordings which presented to the user.
Proceed on resetting will only reset APN on removed SIM and
lead to some side effect if user inserted a new SIM while
keeping displaying the confirmation dialog.
With this situation, close the confirmation dialog is current
decision in design. And the UI which prior to the confirm UI
also need to be updated to avoid from user accessing that
removed SIM.
Bug: 171070050
Test: manual
Change-Id: I338835ca98593f95d98bafa70f12b177c43bf91a
Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference
Bug: 161896447
Test: robotest & manual
Change-Id: I94969f6903d047b9bc41b1e8c14096c92c460b38
The multitude of slightly different launchConfirmationActivity(*)
methods are a big unsustainable pyramid. It's too difficult to
read, too difficult to track which clients are interested in which
parameters, and too difficult to add new parameters, since we need to
1) Read through all of them and find one that's the closest
2) Try not to affect other callers, so potentially add yet another
3) Modify the internal paths, which all basically call each other
until it reaches the biggest launchConfirmationActivity which
has ALL of the parameters
This change should have no behavioral change.
Note: CredentialStorage doesn't need returnCredentials anymore as of
ag/6073449
Test: make -j56 RunSettingsRoboTests
Test: Manually traced code paths for each invocation. A few hidden
dependencies (such as explicitly setting challenge=0 with
hasChallenge=true) were found. Left them the way they were in
case they were intended
Test: Enroll face, fingerprint
Test: Enable developer options
Test: Change to PIN, Pattern, Password, then back to PIN (so each
type requests confirmation)
Test: adb shell am start -a android.app.action.CONFIRM_DEVICE_CREDENTIAL,
authenticate
Test: adb shell am start -a android.app.action.CONFIRM_FRP_CREDENTIAL
(shows confirm credential screen)
Fixes: 138453993
Change-Id: Ic82ef3c3ac2e14d624281921f2d816bcdacbd82b
- use SubscriptionManager.EXTRA_SUBSCRIPTION_INDEX instead of it
Test: make
Test: m RunSettingsRoboTests
Change-Id: Ic635b11c995077ebf1e143d9562b100d7730fe52
DEVELOPMENT_SETTINGS_ENABLED is not set before entering Developer
options in settings app even if it is in eng build. To show eUICC
preference in eng build, uses isDevelopmentSettingsEnabled() instead.
Test: Manual and make RunSettingsRoboTests
Change-Id: Ia1f46fad94bc62ca48dcfef7cd5d6188766aa380
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Adds some conditional behavior for the confirmation screens.
When the erase eSIM option is visible and checked, shows alternate string.
Fixes: 126262481
Fixes: 118751918
Test: visual inspection & make -j RunSettingsRoboTests
Change-Id: I40f983b03ad470d785bf104e645dbc92e7897d2d
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
This means that in some cases RestrictedLockUtils has to be used and in
some RestrictedLockUtilsInternal.
This causes a lot of trivial code changes.
I also updated the ordering of the imports in all affected files.
Bug: 110953302
Test: Built
make -j RunSettingsRoboTests
Change-Id: I9bdf8b89134f853bae4f38c81af436715c73e924
For make this method usage more clear,
setTitle(charSequence) rename as setTitleText,
add java doc: it is only for user generated string
setTitle(int) rename as setTitleRes.
Change-Id: I972cb6a8ff90873dfdc25c23f6dc3d68103c8e4e
Fixes: 78347436
Test: make RunSettingsRoboTests
- for fragments that do not implement the preference screen, change them
to inherit from InstrumentedFragment instead.
Change-Id: I791c2634024bd2c248efea955be5c680180d735c
Fixes: 68277111
Test: make RunSettingsRoboTests
This CL add a checkbox letting user decide when they reset the network
configurations under System > Reset options > Reset Wi-Fi, mobile &
Bluetooth, whether they want to reset eSIM together or not. If the user
choose to reset eSIM togather, EuiccManager#eraseSubscriptions will be
called and all the eSIM profiles will be removed.
Bug: 62961867
Test: E2E & make RunSettingsRoboTests
Change-Id: I533756b12c0474e8e58cc6fe60a38c119365cee2
- remove all code that check for the feature flag, and use the new logic
by default.
Change-Id: I7fbe60da84c1c0f35e7241402a71d2bc4cd300e6
Fixes: 64564191
Test: make RunSettingsRoboTests