Move mobile provision url design to telephony interface
ConnectivityService is going to become mainline and can not
access hidden APIs. Telephony and Settings were both accessing
the hidden API ConnectivityManager#getMobileProvisioningUrl.
Moving #getMobileProvisioningUrl method into telephony means
that there is one less access to a hidden API within the overall
framework since the Connectivity stack never needed this value.
Thus, move getMobileProvisioningUrl() to telephony surface.
Bug: 175177794
Test: atest FrameworksTelephonyTests
Change-Id: Ifbfce791d0c8c2c64ac373f00ab04bd254e71732
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 9b2cac7..e24d2f8 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -9665,4 +9665,19 @@
enforceReadPrivilegedPermission("getCarrierSingleRegistrationEnabled");
return RcsProvisioningMonitor.getInstance().getCarrierSingleRegistrationEnabled(subId);
}
+
+ /**
+ * Get the mobile provisioning url that is used to launch a browser to allow users to manage
+ * their mobile plan.
+ */
+ @Override
+ public String getMobileProvisioningUrl() {
+ enforceReadPrivilegedPermission("getMobileProvisioningUrl");
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ return getDefaultPhone().getMobileProvisioningUrl();
+ } finally {
+ Binder.restoreCallingIdentity(identity);
+ }
+ }
}