summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/net/IVpnManager.aidl2
-rw-r--r--core/java/android/net/VpnManager.java21
2 files changed, 19 insertions, 4 deletions
diff --git a/core/java/android/net/IVpnManager.aidl b/core/java/android/net/IVpnManager.aidl
index 271efe41a9ef..070efa363cc0 100644
--- a/core/java/android/net/IVpnManager.aidl
+++ b/core/java/android/net/IVpnManager.aidl
@@ -38,7 +38,7 @@ interface IVpnManager {
/** VpnManager APIs */
boolean provisionVpnProfile(in VpnProfile profile, String packageName);
void deleteVpnProfile(String packageName);
- void startVpnProfile(String packageName);
+ String startVpnProfile(String packageName);
void stopVpnProfile(String packageName);
/** Always-on VPN APIs */
diff --git a/core/java/android/net/VpnManager.java b/core/java/android/net/VpnManager.java
index 319382691925..91327917f2d7 100644
--- a/core/java/android/net/VpnManager.java
+++ b/core/java/android/net/VpnManager.java
@@ -317,17 +317,32 @@ public class VpnManager {
/**
* Request the startup of a previously provisioned VPN.
*
+ * @return A unique key corresponding to this session.
* @throws SecurityException exception if user or device settings prevent this VPN from being
- * setup, or if user consent has not been granted
+ * setup, or if user consent has not been granted
*/
- public void startProvisionedVpnProfile() {
+ @NonNull
+ public String startProvisionedVpnProfileSession() {
try {
- mService.startVpnProfile(mContext.getOpPackageName());
+ return mService.startVpnProfile(mContext.getOpPackageName());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
}
+ /**
+ * Request the startup of a previously provisioned VPN.
+ *
+ * @throws SecurityException exception if user or device settings prevent this VPN from being
+ * setup, or if user consent has not been granted
+ * @deprecated This method is replaced by startProvisionedVpnProfileSession which returns a
+ * session key for the caller to diagnose the errors.
+ */
+ @Deprecated
+ public void startProvisionedVpnProfile() {
+ startProvisionedVpnProfileSession();
+ }
+
/** Tear down the VPN provided by the calling app (if any) */
public void stopProvisionedVpnProfile() {
try {