Merge "Throw illegal state exception when service is not available" am: 572a358723 am: f431f2cadd

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2160225

Change-Id: Ib52218f59e3f5ca5075001e14ab568341925738a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Jack Yu
2022-07-21 22:50:39 +00:00
committed by Automerger Merge Worker

View File

@@ -3113,8 +3113,9 @@ public class SubscriptionManager {
* @param callback Callback will be triggered once it succeeds or failed.
* Pass null if don't care about the result.
*
* @throws IllegalStateException when subscription manager service is not available.
* @throws SecurityException when clients do not have MODIFY_PHONE_STATE permission.
* @hide
*
*/
@SystemApi
@RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE)
@@ -3124,7 +3125,9 @@ public class SubscriptionManager {
if (VDBG) logd("[setPreferredDataSubscriptionId]+ subId:" + subId);
try {
ISub iSub = TelephonyManager.getSubscriptionService();
if (iSub == null) return;
if (iSub == null) {
throw new IllegalStateException("subscription manager service is null.");
}
ISetOpportunisticDataCallback callbackStub = new ISetOpportunisticDataCallback.Stub() {
@Override
@@ -3144,7 +3147,8 @@ public class SubscriptionManager {
};
iSub.setPreferredDataSubscriptionId(subId, needValidation, callbackStub);
} catch (RemoteException ex) {
// ignore it
loge("setPreferredDataSubscriptionId RemoteException=" + ex);
ex.rethrowFromSystemServer();
}
}