From 96dd9e4dfe39817d4c9287b9c732905970bc692d Mon Sep 17 00:00:00 2001 From: Malcolm Chen Date: Wed, 27 Mar 2019 19:21:11 -0700 Subject: [PATCH 1/3] Add @hide API to return whether a modem stack is enabled or not. Bug: 129296702 Test: TelephonyManagerTestApp Change-Id: I7ef4ad8322cf85e5a159363e90dde303ac7240de Merged-In: I7ef4ad8322cf85e5a159363e90dde303ac7240de --- .../android/telephony/TelephonyManager.java | 19 +++++++++++++++++++ .../internal/telephony/ITelephony.aidl | 4 +++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index f9d9baba0bebc..2b4209c519b12 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -10695,6 +10695,25 @@ public class TelephonyManager { return ret; } + /** + * It indicates whether modem is enabled or not per slot. + * It's the corresponding status of {@link #enableModemForSlot}. + * + * @param slotIndex which slot it's checking. + * @hide + */ + public boolean isModemEnabledForSlot(int slotIndex) { + try { + ITelephony telephony = getITelephony(); + if (telephony != null) { + return telephony.isModemEnabledForSlot(slotIndex, mContext.getOpPackageName()); + } + } catch (RemoteException ex) { + Log.e(TAG, "enableModem RemoteException", ex); + } + return false; + } + /** * Indicate if the user is allowed to use multiple SIM cards at the same time to register * on the network (e.g. Dual Standby or Dual Active) when the device supports it, or if the diff --git a/telephony/java/com/android/internal/telephony/ITelephony.aidl b/telephony/java/com/android/internal/telephony/ITelephony.aidl index 26d0c82b2d000..d173cc9c44e5c 100644 --- a/telephony/java/com/android/internal/telephony/ITelephony.aidl +++ b/telephony/java/com/android/internal/telephony/ITelephony.aidl @@ -1955,5 +1955,7 @@ interface ITelephony { /** * Get the IRadio HAL Version encoded as 100 * MAJOR_VERSION + MINOR_VERSION or -1 if unknown */ - int getRadioHalVersion(); + int getRadioHalVersion(); + + boolean isModemEnabledForSlot(int slotIndex, String callingPackage); } From 9ee147319177572ea90a78abf885b47529d29e1e Mon Sep 17 00:00:00 2001 From: Malcolm Chen Date: Fri, 29 Mar 2019 18:30:23 -0700 Subject: [PATCH 2/3] Remove hidden IntDef in java doc. Bug: 128456336 Test: build Change-Id: If016aabda5092d299eca2e858f26057614767297 Merged-In: If016aabda5092d299eca2e858f26057614767297 --- telephony/java/android/telephony/SubscriptionManager.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/telephony/java/android/telephony/SubscriptionManager.java b/telephony/java/android/telephony/SubscriptionManager.java index 1f9f32df83c7d..801f93777d4e8 100644 --- a/telephony/java/android/telephony/SubscriptionManager.java +++ b/telephony/java/android/telephony/SubscriptionManager.java @@ -2588,8 +2588,7 @@ public class SubscriptionManager { * {@link NetworkCapabilities#NET_CAPABILITY_VALIDATED}. * @param executor The executor of where the callback will execute. * @param callback Callback will be triggered once it succeeds or failed. - * See {@link TelephonyManager.SetOpportunisticSubscriptionResult} - * for more details. Pass null if don't care about the result. + * Pass null if don't care about the result. * * @hide * @@ -2597,7 +2596,8 @@ public class SubscriptionManager { @SystemApi @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPreferredDataSubscriptionId(int subId, boolean needValidation, - @Nullable @CallbackExecutor Executor executor, @Nullable Consumer callback) { + @Nullable @CallbackExecutor Executor executor, @Nullable + @TelephonyManager.SetOpportunisticSubscriptionResult Consumer callback) { if (VDBG) logd("[setPreferredDataSubscriptionId]+ subId:" + subId); try { ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub")); From d262f4c14ba720b379a56d8af3ed10d803ffbbc4 Mon Sep 17 00:00:00 2001 From: Malcolm Chen Date: Thu, 28 Mar 2019 19:27:58 -0700 Subject: [PATCH 3/3] Changing default phone capability. Bug: 126864501 Test: manual Change-Id: I3d50fb30980b5e2d2240bd186fb15c7f2a7c21ab Merged-In: I3d50fb30980b5e2d2240bd186fb15c7f2a7c21ab --- .../android/telephony/PhoneCapability.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/telephony/java/android/telephony/PhoneCapability.java b/telephony/java/android/telephony/PhoneCapability.java index 21dad77d29b76..c1906ebeec9fa 100644 --- a/telephony/java/android/telephony/PhoneCapability.java +++ b/telephony/java/android/telephony/PhoneCapability.java @@ -30,6 +30,25 @@ import java.util.Objects; * @hide */ public class PhoneCapability implements Parcelable { + // Hardcoded default DSDS capability. + public static final PhoneCapability DEFAULT_DSDS_CAPABILITY; + // Hardcoded default Single SIM single standby capability. + public static final PhoneCapability DEFAULT_SSSS_CAPABILITY; + + static { + ModemInfo modemInfo1 = new ModemInfo(0, 0, true, true); + ModemInfo modemInfo2 = new ModemInfo(1, 0, true, true); + + List logicalModemList = new ArrayList<>(); + logicalModemList.add(modemInfo1); + logicalModemList.add(modemInfo2); + DEFAULT_DSDS_CAPABILITY = new PhoneCapability(1, 1, 0, logicalModemList, false); + + logicalModemList = new ArrayList<>(); + logicalModemList.add(modemInfo1); + DEFAULT_SSSS_CAPABILITY = new PhoneCapability(1, 1, 0, logicalModemList, false); + } + public final int maxActiveVoiceCalls; public final int maxActiveData; public final int max5G;