Ui show "No connection" when WiFi is turned on and no available network

Follow this table to display the UI.
https://docs.google.com/spreadsheets/d/1w7R7Q3EXkep7iO4VcgioNp00DWas3Xve5i1rWexAkz8/edit#gid=954295315
Bug: 183593681
Test: atest ProviderModelSliceTest
atest ProviderModelSliceHelperTest
atest InternetConnectivityPanelTest
make RunSettingsRoboTests -j

Change-Id: I103f9b2fafe4fc543452a74b7ee7b2e537f879b5
This commit is contained in:
SongFerngWang
2021-04-22 21:01:03 +08:00
parent 976c6ac56d
commit 8e0349a67b
4 changed files with 153 additions and 143 deletions

View File

@@ -301,21 +301,37 @@ public class InternetConnectivityPanel implements PanelContent, LifecycleObserve
}
final List<ScanResult> wifiList = mWifiManager.getScanResults();
if (wifiList != null && wifiList.size() == 0) {
// Sub-Title:
// show non_carrier_network_unavailable
// - while Wi-Fi on + no Wi-Fi item
// show all_network_unavailable:
// - while Wi-Fi on + no Wi-Fi item + no carrier
// - while Wi-Fi on + no Wi-Fi item + no data capability
log("No Wi-Fi item.");
mSubtitle = SUBTITLE_TEXT_NON_CARRIER_NETWORK_UNAVAILABLE;
if (!mProviderModelSliceHelper.hasCarrier()
|| !mProviderModelSliceHelper.isDataSimActive()) {
log("No carrier item or no carrier data.");
mSubtitle = SUBTITLE_TEXT_ALL_CARRIER_NETWORK_UNAVAILABLE;
}
if (wifiList != null && wifiList.size() != 0) {
return;
}
// Sub-Title:
// show non_carrier_network_unavailable
// - while Wi-Fi on + no Wi-Fi item
// - while Wi-Fi on + no Wi-Fi item + mobile data off
// show all_network_unavailable:
// - while Wi-Fi on + no Wi-Fi item + no carrier item
// - while Wi-Fi on + no Wi-Fi item + service is out of service
// - while Wi-Fi on + no Wi-Fi item + mobile data on + no carrier data.
log("No Wi-Fi item.");
if (!mProviderModelSliceHelper.hasCarrier()
|| (!mProviderModelSliceHelper.isVoiceStateInService()
&& !mProviderModelSliceHelper.isDataStateInService())) {
log("no carrier or service is out of service.");
mSubtitle = SUBTITLE_TEXT_ALL_CARRIER_NETWORK_UNAVAILABLE;
return;
}
if (!mProviderModelSliceHelper.isMobileDataEnabled()) {
log("mobile data off");
mSubtitle = SUBTITLE_TEXT_NON_CARRIER_NETWORK_UNAVAILABLE;
return;
}
if (!mProviderModelSliceHelper.isDataSimActive()) {
log("no carrier data.");
mSubtitle = SUBTITLE_TEXT_ALL_CARRIER_NETWORK_UNAVAILABLE;
return;
}
mSubtitle = SUBTITLE_TEXT_NON_CARRIER_NETWORK_UNAVAILABLE;
}
private class NetworkProviderTelephonyCallback extends TelephonyCallback implements