diff --git a/packages/CaptivePortalLogin/res/values/strings.xml b/packages/CaptivePortalLogin/res/values/strings.xml
index b1a3852a7a8d7..f486fe4c5ddf8 100644
--- a/packages/CaptivePortalLogin/res/values/strings.xml
+++ b/packages/CaptivePortalLogin/res/values/strings.xml
@@ -5,6 +5,7 @@
Use this network as is
Do not use this network
Sign in to network
+ Sign in to %1$s
The network you’re trying to join has security issues.
For example, the login page may not belong to the organization shown.
Continue anyway via browser
diff --git a/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java b/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java
index 3601a0aa57461..d13f37ae255ad 100644
--- a/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java
+++ b/packages/CaptivePortalLogin/src/com/android/captiveportallogin/CaptivePortalLoginActivity.java
@@ -26,6 +26,7 @@ import android.net.ConnectivityManager;
import android.net.ConnectivityManager.NetworkCallback;
import android.net.Network;
import android.net.NetworkCapabilities;
+import android.net.NetworkInfo;
import android.net.NetworkRequest;
import android.net.Proxy;
import android.net.Uri;
@@ -469,7 +470,15 @@ public class CaptivePortalLoginActivity extends Activity {
}
private String getHeaderTitle() {
- return getString(R.string.action_bar_label);
+ NetworkInfo info = mCm.getNetworkInfo(mNetwork);
+ if (info == null) {
+ return getString(R.string.action_bar_label);
+ }
+ NetworkCapabilities nc = mCm.getNetworkCapabilities(mNetwork);
+ if (!nc.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) {
+ return getString(R.string.action_bar_label);
+ }
+ return getString(R.string.action_bar_title, info.getExtraInfo().replaceAll("^\"|\"$", ""));
}
private String getHeaderSubtitle(String urlString) {