Add new dialogue when user is going to delete sim that use RAC.
Test: make Bug: 316419093 Change-Id: Iaed54afa7cfd20c1dd6adbd4d50f54cab3da095d
This commit is contained in:
@@ -17,13 +17,15 @@
|
||||
package com.android.settings.network;
|
||||
|
||||
import static android.telephony.SubscriptionManager.INVALID_SIM_SLOT_INDEX;
|
||||
import static android.telephony.UiccSlotInfo.CARD_STATE_INFO_PRESENT;
|
||||
import static android.telephony.SubscriptionManager.PROFILE_CLASS_PROVISIONING;
|
||||
import static android.telephony.UiccSlotInfo.CARD_STATE_INFO_PRESENT;
|
||||
|
||||
import static com.android.internal.util.CollectionUtils.emptyIfNull;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkCapabilities;
|
||||
import android.os.ParcelUuid;
|
||||
import android.provider.Settings;
|
||||
import android.telephony.PhoneNumberUtils;
|
||||
@@ -560,6 +562,7 @@ public class SubscriptionUtil {
|
||||
Log.i(TAG, "Unable to delete subscription due to invalid subscription ID.");
|
||||
return;
|
||||
}
|
||||
// TODO(b/325693582): Add verification if carrier is RAC and logic for new dialog
|
||||
context.startActivity(DeleteEuiccSubscriptionDialogActivity.getIntent(context, subId));
|
||||
}
|
||||
|
||||
@@ -832,4 +835,29 @@ public class SubscriptionUtil {
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns {@code true} if device is connected to Wi-Fi or mobile data provided by a different
|
||||
* subId.
|
||||
*
|
||||
* @param context context
|
||||
* @param targetSubId subscription that is going to be deleted
|
||||
*/
|
||||
@VisibleForTesting
|
||||
static boolean isConnectedToWifiOrDifferentSubId(@NonNull Context context, int targetSubId) {
|
||||
ConnectivityManager connectivityManager =
|
||||
context.getSystemService(ConnectivityManager.class);
|
||||
NetworkCapabilities capabilities =
|
||||
connectivityManager.getNetworkCapabilities(connectivityManager.getActiveNetwork());
|
||||
|
||||
if (capabilities != null) {
|
||||
if (capabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) {
|
||||
// Connected to WiFi
|
||||
return true;
|
||||
} else if (capabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR)) {
|
||||
return targetSubId != SubscriptionManager.getActiveDataSubscriptionId();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user