diff --git a/api/current.txt b/api/current.txt index 70d254b138aae..ed09944cf2076 100644 --- a/api/current.txt +++ b/api/current.txt @@ -44911,6 +44911,7 @@ package android.telephony.euicc { method public boolean isEnabled(); method public void startResolutionActivity(android.app.Activity, int, android.content.Intent, android.app.PendingIntent) throws android.content.IntentSender.SendIntentException; method public void switchToSubscription(int, android.app.PendingIntent); + method public void updateSubscriptionNickname(int, java.lang.String, android.app.PendingIntent); field public static final java.lang.String ACTION_MANAGE_EMBEDDED_SUBSCRIPTIONS = "android.telephony.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS"; field public static final java.lang.String ACTION_NOTIFY_CARRIER_SETUP_INCOMPLETE = "android.telephony.euicc.action.NOTIFY_CARRIER_SETUP_INCOMPLETE"; field public static final int EMBEDDED_SUBSCRIPTION_RESULT_ERROR = 2; // 0x2 diff --git a/telephony/java/android/telephony/euicc/EuiccManager.java b/telephony/java/android/telephony/euicc/EuiccManager.java index 6326cc688914f..cc9befedcdf79 100644 --- a/telephony/java/android/telephony/euicc/EuiccManager.java +++ b/telephony/java/android/telephony/euicc/EuiccManager.java @@ -616,14 +616,13 @@ public class EuiccManager { /** * Update the nickname for the given subscription. * - *

Requires that the calling app has the - * {@link android.Manifest.permission#WRITE_EMBEDDED_SUBSCRIPTIONS} permission. This is for - * internal system use only. + *

Requires that the calling app has carrier privileges according to the metadata of the + * profile to be updated, or the + * {@code android.Manifest.permission#WRITE_EMBEDDED_SUBSCRIPTIONS} permission. * * @param subscriptionId the ID of the subscription to update. * @param nickname the new nickname to apply. * @param callbackIntent a PendingIntent to launch when the operation completes. - * @hide */ @RequiresPermission(Manifest.permission.WRITE_EMBEDDED_SUBSCRIPTIONS) public void updateSubscriptionNickname( @@ -634,7 +633,7 @@ public class EuiccManager { } try { getIEuiccController().updateSubscriptionNickname( - subscriptionId, nickname, callbackIntent); + subscriptionId, nickname, mContext.getOpPackageName(), callbackIntent); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } diff --git a/telephony/java/com/android/internal/telephony/euicc/IEuiccController.aidl b/telephony/java/com/android/internal/telephony/euicc/IEuiccController.aidl index 870a689f85b18..dd40d560250dc 100644 --- a/telephony/java/com/android/internal/telephony/euicc/IEuiccController.aidl +++ b/telephony/java/com/android/internal/telephony/euicc/IEuiccController.aidl @@ -39,7 +39,7 @@ interface IEuiccController { oneway void switchToSubscription(int subscriptionId, String callingPackage, in PendingIntent callbackIntent); oneway void updateSubscriptionNickname(int subscriptionId, String nickname, - in PendingIntent callbackIntent); + String callingPackage, in PendingIntent callbackIntent); oneway void eraseSubscriptions(in PendingIntent callbackIntent); oneway void retainSubscriptionsForFactoryReset(in PendingIntent callbackIntent); } \ No newline at end of file