Merge changes from topic "Porting-ONSAPIChanges"
am: 31c7607ee6
Change-Id: Ibca8c0202ff702be57f128b0cc24a8679d0a8083
This commit is contained in:
@@ -43118,7 +43118,7 @@ package android.telephony {
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setNetworkSelectionModeManual(String, boolean);
|
||||
method public boolean setOperatorBrandOverride(String);
|
||||
method public boolean setPreferredNetworkTypeToGlobal();
|
||||
method public boolean setPreferredOpportunisticDataSubscription(int);
|
||||
method public void setPreferredOpportunisticDataSubscription(int, boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>);
|
||||
method public void setVisualVoicemailSmsFilterSettings(android.telephony.VisualVoicemailSmsFilterSettings);
|
||||
method public boolean setVoiceMailNumber(String, String);
|
||||
method @Deprecated public void setVoicemailRingtoneUri(android.telecom.PhoneAccountHandle, android.net.Uri);
|
||||
|
||||
@@ -6314,7 +6314,7 @@ package android.telephony {
|
||||
method public void requestEmbeddedSubscriptionInfoListRefresh(int);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultDataSubId(int);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setDefaultSmsSubId(int);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPreferredDataSubscriptionId(int, boolean, @NonNull java.util.concurrent.Executor, java.util.function.Consumer<java.lang.Integer>);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setPreferredDataSubscriptionId(int, boolean, @Nullable java.util.concurrent.Executor, @Nullable java.util.function.Consumer<java.lang.Integer>);
|
||||
method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public boolean setSubscriptionEnabled(int, boolean);
|
||||
field @NonNull public static final android.net.Uri ADVANCED_CALLING_ENABLED_CONTENT_URI;
|
||||
field public static final int PROFILE_CLASS_DEFAULT = -1; // 0xffffffff
|
||||
|
||||
@@ -2606,7 +2606,7 @@ public class SubscriptionManager {
|
||||
@SystemApi
|
||||
@RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE)
|
||||
public void setPreferredDataSubscriptionId(int subId, boolean needValidation,
|
||||
@NonNull @CallbackExecutor Executor executor, Consumer<Integer> callback) {
|
||||
@Nullable @CallbackExecutor Executor executor, @Nullable Consumer<Integer> callback) {
|
||||
if (VDBG) logd("[setPreferredDataSubscriptionId]+ subId:" + subId);
|
||||
try {
|
||||
ISub iSub = ISub.Stub.asInterface(ServiceManager.getService("isub"));
|
||||
@@ -2615,10 +2615,11 @@ public class SubscriptionManager {
|
||||
ISetOpportunisticDataCallback callbackStub = new ISetOpportunisticDataCallback.Stub() {
|
||||
@Override
|
||||
public void onComplete(int result) {
|
||||
if (executor == null || callback == null) {
|
||||
return;
|
||||
}
|
||||
Binder.withCleanCallingIdentity(() -> executor.execute(() -> {
|
||||
if (callback != null) {
|
||||
callback.accept(result);
|
||||
}
|
||||
callback.accept(result);
|
||||
}));
|
||||
}
|
||||
};
|
||||
|
||||
@@ -81,6 +81,7 @@ import com.android.internal.telephony.CellNetworkScanResult;
|
||||
import com.android.internal.telephony.INumberVerificationCallback;
|
||||
import com.android.internal.telephony.IOns;
|
||||
import com.android.internal.telephony.IPhoneSubInfo;
|
||||
import com.android.internal.telephony.ISetOpportunisticDataCallback;
|
||||
import com.android.internal.telephony.ITelephony;
|
||||
import com.android.internal.telephony.ITelephonyRegistry;
|
||||
import com.android.internal.telephony.IUpdateAvailableNetworksCallback;
|
||||
@@ -10212,21 +10213,40 @@ public class TelephonyManager {
|
||||
* @param subId which opportunistic subscription
|
||||
* {@link SubscriptionManager#getOpportunisticSubscriptions} is preferred for cellular data.
|
||||
* Pass {@link SubscriptionManager#DEFAULT_SUBSCRIPTION_ID} to unset the preference
|
||||
* @return true if request is accepted, else false.
|
||||
* @param needValidation whether validation is needed before switch happens.
|
||||
* @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.
|
||||
*
|
||||
*/
|
||||
public boolean setPreferredOpportunisticDataSubscription(int subId) {
|
||||
public void setPreferredOpportunisticDataSubscription(int subId, boolean needValidation,
|
||||
@Nullable @CallbackExecutor Executor executor, @Nullable Consumer<Integer> callback) {
|
||||
String pkgForDebug = mContext != null ? mContext.getOpPackageName() : "<unknown>";
|
||||
try {
|
||||
IOns iOpportunisticNetworkService = getIOns();
|
||||
if (iOpportunisticNetworkService != null) {
|
||||
return iOpportunisticNetworkService
|
||||
.setPreferredDataSubscriptionId(subId, pkgForDebug);
|
||||
if (iOpportunisticNetworkService == null) {
|
||||
return;
|
||||
}
|
||||
ISetOpportunisticDataCallback callbackStub = new ISetOpportunisticDataCallback.Stub() {
|
||||
@Override
|
||||
public void onComplete(int result) {
|
||||
if (executor == null || callback == null) {
|
||||
return;
|
||||
}
|
||||
Binder.withCleanCallingIdentity(() -> executor.execute(() -> {
|
||||
callback.accept(result);
|
||||
}));
|
||||
}
|
||||
};
|
||||
|
||||
iOpportunisticNetworkService
|
||||
.setPreferredDataSubscriptionId(subId, needValidation, callbackStub,
|
||||
pkgForDebug);
|
||||
} catch (RemoteException ex) {
|
||||
Rlog.e(TAG, "setPreferredDataSubscriptionId RemoteException", ex);
|
||||
}
|
||||
return false;
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -19,6 +19,8 @@ package com.android.internal.telephony;
|
||||
import android.telephony.AvailableNetworkInfo;
|
||||
import com.android.internal.telephony.IUpdateAvailableNetworksCallback;
|
||||
|
||||
import com.android.internal.telephony.ISetOpportunisticDataCallback;
|
||||
|
||||
interface IOns {
|
||||
|
||||
/**
|
||||
@@ -63,11 +65,13 @@ interface IOns {
|
||||
* @param subId which opportunistic subscription
|
||||
* {@link SubscriptionManager#getOpportunisticSubscriptions} is preferred for cellular data.
|
||||
* Pass {@link SubscriptionManager#DEFAULT_SUBSCRIPTION_ID} to unset the preference
|
||||
* @param needValidation whether validation is needed before switch happens.
|
||||
* @param callback callback upon request completion.
|
||||
* @param callingPackage caller's package name
|
||||
* @return true if request is accepted, else false.
|
||||
*
|
||||
*/
|
||||
boolean setPreferredDataSubscriptionId(int subId, String callingPackage);
|
||||
void setPreferredDataSubscriptionId(int subId, boolean needValidation,
|
||||
ISetOpportunisticDataCallback callbackStub, String callingPackage);
|
||||
|
||||
/**
|
||||
* Get preferred opportunistic data subscription Id
|
||||
|
||||
Reference in New Issue
Block a user