Merge changes from topic "Porting-ONSAPIChanges"

am: 31c7607ee6

Change-Id: Ibca8c0202ff702be57f128b0cc24a8679d0a8083
This commit is contained in:
Sooraj Sasindran
2019-03-15 12:53:18 -07:00
committed by android-build-merger
5 changed files with 39 additions and 14 deletions

View File

@@ -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);

View File

@@ -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

View File

@@ -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);
}));
}
};

View File

@@ -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;
}
/**

View File

@@ -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