Add the UI of dual sim onboarding

This is the first version.

Bug: 318310357
Bug: 298898436
Bug: 298891941
Test: Build pass
atest SimOnboardingLabelSimTest
atest SimOnboardingPageProviderTest
atest SimOnboardingPrimarySimTest
atest SimOnboardingSelectSimTest

Change-Id: I195bd6b03ab0e881fdd67272c2476ef2b1fcd3ed
This commit is contained in:
SongFerngWang
2023-12-12 12:08:51 +08:00
committed by SongFerng Wang
parent 4e4b5f0876
commit 4713fd6baa
12 changed files with 1246 additions and 3 deletions

View File

@@ -42,12 +42,14 @@ import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import com.android.internal.telephony.MccTable;
import com.android.internal.telephony.flags.Flags;
import com.android.settings.R;
import com.android.settings.flags.Flags;
import com.android.settings.network.helper.SelectableSubscriptions;
import com.android.settings.network.helper.SubscriptionAnnotation;
import com.android.settings.network.telephony.DeleteEuiccSubscriptionDialogActivity;
import com.android.settings.network.telephony.ToggleSubscriptionDialogActivity;
import com.android.settings.spa.SpaActivity;
import com.android.settings.spa.network.SimOnboardingPageProvider;
import java.util.ArrayList;
import java.util.Collections;
@@ -535,6 +537,11 @@ public class SubscriptionUtil {
Log.i(TAG, "Unable to toggle subscription due to invalid subscription ID.");
return;
}
if (enable && Flags.isDualSimOnboardingEnabled()) {
String route = SimOnboardingPageProvider.INSTANCE.getRoute(subId);
SpaActivity.startSpaActivity(context, route);
return;
}
context.startActivity(ToggleSubscriptionDialogActivity.getIntent(context, subId, enable));
}
@@ -814,7 +821,7 @@ public class SubscriptionUtil {
private static boolean isEmbeddedSubscriptionVisible(@NonNull SubscriptionInfo subInfo) {
if (subInfo.isEmbedded()
&& (subInfo.getProfileClass() == PROFILE_CLASS_PROVISIONING
|| (Flags.oemEnabledSatelliteFlag()
|| (com.android.internal.telephony.flags.Flags.oemEnabledSatelliteFlag()
&& subInfo.isOnlyNonTerrestrialNetwork()))) {
return false;
}