Add android.net.CaptivePortal class for captive-portal-handling-app callbacks
This new class replaces the awkward string token and ConnectivityManager APIs
used by apps handling captive portals.
Bug:21343774
Change-Id: I1a2c69edb17322715bf8422bb4216b0ea60bfd59
diff --git a/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java b/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java
index ddbcd78..a489f94 100644
--- a/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java
+++ b/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java
@@ -21,6 +21,7 @@
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
+import android.net.CaptivePortal;
import android.net.ConnectivityManager;
import android.net.ConnectivityManager.NetworkCallback;
import android.net.Network;
@@ -62,7 +63,7 @@
private URL mURL;
private Network mNetwork;
- private String mResponseToken;
+ private CaptivePortal mCaptivePortal;
private NetworkCallback mNetworkCallback;
private ConnectivityManager mCm;
private boolean mLaunchBrowser = false;
@@ -83,7 +84,7 @@
done(Result.WANTED_AS_IS);
}
mNetwork = getIntent().getParcelableExtra(ConnectivityManager.EXTRA_NETWORK);
- mResponseToken = getIntent().getStringExtra(ConnectivityManager.EXTRA_CAPTIVE_PORTAL_TOKEN);
+ mCaptivePortal = getIntent().getParcelableExtra(ConnectivityManager.EXTRA_CAPTIVE_PORTAL);
// Also initializes proxy system properties.
mCm.bindProcessToNetwork(mNetwork);
@@ -155,13 +156,13 @@
}
switch (result) {
case DISMISSED:
- mCm.reportCaptivePortalDismissed(mNetwork, mResponseToken);
+ mCaptivePortal.reportCaptivePortalDismissed();
break;
case UNWANTED:
- mCm.ignoreNetworkWithCaptivePortal(mNetwork, mResponseToken);
+ mCaptivePortal.ignoreNetwork();
break;
case WANTED_AS_IS:
- mCm.useNetworkWithCaptivePortal(mNetwork, mResponseToken);
+ mCaptivePortal.useNetwork();
break;
}
finish();