Exposing getNetworkSelectionMode
Bug: 148018766
Test: make && make offline-sdk-docs
Change-Id: I6908fbd34828d991ade6151eea4d1df0d199f8b0
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 9bef89a..096d14f 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -2952,11 +2952,18 @@
@Override
public int getNetworkSelectionMode(int subId) {
- if (!isActiveSubscription(subId)) {
- return TelephonyManager.NETWORK_SELECTION_MODE_UNKNOWN;
+ TelephonyPermissions
+ .enforeceCallingOrSelfReadPrecisePhoneStatePermissionOrCarrierPrivilege(
+ mApp, subId, "getNetworkSelectionMode");
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ if (!isActiveSubscription(subId)) {
+ return TelephonyManager.NETWORK_SELECTION_MODE_UNKNOWN;
+ }
+ return (int) sendRequest(CMD_GET_NETWORK_SELECTION_MODE, null /* argument */, subId);
+ } finally {
+ Binder.restoreCallingIdentity(identity);
}
-
- return (int) sendRequest(CMD_GET_NETWORK_SELECTION_MODE, null /* argument */, subId);
}
@Override
@@ -4887,12 +4894,11 @@
TelephonyPermissions.enforceCallingOrSelfModifyPermissionOrCarrierPrivilege(
mApp, subId, "setNetworkSelectionModeAutomatic");
- if (!isActiveSubscription(subId)) {
- return;
- }
-
final long identity = Binder.clearCallingIdentity();
try {
+ if (!isActiveSubscription(subId)) {
+ return;
+ }
if (DBG) log("setNetworkSelectionModeAutomatic: subId " + subId);
sendRequest(CMD_SET_NETWORK_SELECTION_MODE_AUTOMATIC, null, subId);
} finally {