Merge "Hide the enabling mobile data" into main

This commit is contained in:
SongFerng Wang
2024-09-28 00:55:48 +00:00
committed by Android (Google) Code Review

View File

@@ -21,10 +21,12 @@ import static android.telephony.SubscriptionManager.PROFILE_CLASS_PROVISIONING;
import android.app.Activity;
import android.app.Dialog;
import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.util.Log;
import androidx.annotation.NonNull;
@@ -91,8 +93,12 @@ public class PreferredSimDialogFragment extends SimDialogFragment implements
}
if (dialog == null) {
Log.d(TAG, "Dialog is null.");
dismiss();
dismiss("Dialog is null.");
return;
}
Context context = getContext();
if (context == null) {
dismiss("getContext is null.");
return;
}
@@ -100,24 +106,44 @@ public class PreferredSimDialogFragment extends SimDialogFragment implements
if (info == null || (info.isEmbedded()
&& (info.getProfileClass() == PROFILE_CLASS_PROVISIONING
|| (Flags.oemEnabledSatelliteFlag() && info.isOnlyNonTerrestrialNetwork())))) {
dismiss();
dismiss("SubscriptionInfo is null or other esim's cases.");
return;
}
Log.d(TAG, "SubscriptionInfo: " + info);
TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
if (telephonyManager == null) {
dismiss("TelephonyManager is null.");
return;
}
telephonyManager = telephonyManager.createForSubscriptionId(info.getSubscriptionId());
if (telephonyManager.isDataEnabledForReason(TelephonyManager.DATA_ENABLED_REASON_USER)) {
dismiss("mobile data is on.");
final SimDialogActivity activity = (SimDialogActivity) getActivity();
if (activity != null) {
activity.finish();
}
return;
}
final CharSequence simName =
SubscriptionUtil.getUniqueSubscriptionDisplayName(info, getContext());
SubscriptionUtil.getUniqueSubscriptionDisplayName(info, context);
final String title =
getContext().getString(
context.getString(
getTitleResId(),
simName);
final String message =
getContext().getString(
context.getString(
R.string.sim_preferred_message,
simName);
dialog.setTitle(title);
dialog.setMessage(message);
}
private void dismiss(String log) {
Log.d(TAG, log);
dismiss();
}
@Override
public void updateDialog() {
updateDialog((AlertDialog) getDialog());