summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLucas Lin <lucaslin@google.com>2020-03-19 04:30:19 +0000
committerLucas Lin <lucaslin@google.com>2020-03-19 04:58:47 +0000
commit7120763069c8f1257bc8e0f3367a5b4eebb7941a (patch)
tree4d6cb027b4d170c4f056faf7831837d3ba45bace /src
parent32396008c20b0f245624b52ff390f19499487781 (diff)
Update the title & description of notification
Refer to the UX design doc to fix the title & description. Bug: 150903640 Test: 1. Build pass 2. atest NetworkStackTests 3. Manual test to see if the title & description are shown as expected Change-Id: I5ab49a3b5b220e144c69627eb9d02c6ddc438716 Merged-In: I354f9f19aa4d8057b49833107c8bd4d9c67d5525 (cherry picked from commit 07c905836d8a0d153ad3f02421b9776a0cee1108)
Diffstat (limited to 'src')
-rw-r--r--src/com/android/networkstack/NetworkStackNotifier.java30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/com/android/networkstack/NetworkStackNotifier.java b/src/com/android/networkstack/NetworkStackNotifier.java
index d86e03b..1e97617 100644
--- a/src/com/android/networkstack/NetworkStackNotifier.java
+++ b/src/com/android/networkstack/NetworkStackNotifier.java
@@ -181,6 +181,9 @@ public class NetworkStackNotifier {
final TrackedNetworkStatus networkStatus = mNetworkStatus.get(network);
// The required network attributes callbacks were not fired yet for this network
if (networkStatus == null) return;
+ // Don't show the notification when SSID is unknown to prevent sending something vague to
+ // the user.
+ final boolean hasSsid = !TextUtils.isEmpty(getSsid(networkStatus));
final CaptivePortalDataShim capportData = getCaptivePortalData(networkStatus);
final boolean showVenueInfo = capportData != null && capportData.getVenueInfoUrl() != null
@@ -191,9 +194,11 @@ public class NetworkStackNotifier {
&& isVenueInfoNotificationEnabled()
// Most browsers do not yet support opening a page on a non-default network, so the
// venue info link should not be shown if the network is not the default one.
- && network.equals(mDefaultNetwork);
+ && network.equals(mDefaultNetwork)
+ && hasSsid;
final boolean showValidated =
- networkStatus.mValidatedNotificationPending && networkStatus.isValidated();
+ networkStatus.mValidatedNotificationPending && networkStatus.isValidated()
+ && hasSsid;
final String notificationTag = getNotificationTag(network);
final Resources res = mContext.getResources();
@@ -216,7 +221,7 @@ public class NetworkStackNotifier {
// channel even if the notification contains venue info: the "venue info" notification
// then doubles as a "connected" notification.
final String channel = showValidated ? CHANNEL_CONNECTED : CHANNEL_VENUE_INFO;
- builder = getNotificationBuilder(channel, networkStatus, res)
+ builder = getNotificationBuilder(channel, networkStatus, res, getSsid(networkStatus))
.setContentText(res.getString(R.string.tap_for_info))
.setContentIntent(mDependencies.getActivityPendingIntent(
getContextAsUser(mContext, UserHandle.CURRENT),
@@ -226,8 +231,10 @@ public class NetworkStackNotifier {
} else if (showValidated) {
if (networkStatus.mShownNotification == NOTE_CONNECTED) return;
- builder = getNotificationBuilder(CHANNEL_CONNECTED, networkStatus, res)
+ builder = getNotificationBuilder(CHANNEL_CONNECTED, networkStatus, res,
+ getSsid(networkStatus))
.setTimeoutAfter(CONNECTED_NOTIFICATION_TIMEOUT_MS)
+ .setContentText(res.getString(R.string.connected))
.setContentIntent(mDependencies.getActivityPendingIntent(
getContextAsUser(mContext, UserHandle.CURRENT),
new Intent(Settings.ACTION_WIFI_SETTINGS),
@@ -256,9 +263,10 @@ public class NetworkStackNotifier {
}
private Notification.Builder getNotificationBuilder(@NonNull String channelId,
- @NonNull TrackedNetworkStatus networkStatus, @NonNull Resources res) {
+ @NonNull TrackedNetworkStatus networkStatus, @NonNull Resources res,
+ @NonNull String ssid) {
return new Notification.Builder(mContext, channelId)
- .setContentTitle(getConnectedNotificationTitle(res, networkStatus))
+ .setContentTitle(ssid)
.setSmallIcon(R.drawable.icon_wifi);
}
@@ -279,16 +287,6 @@ public class NetworkStackNotifier {
return mNotificationManager.getNotificationChannel(CHANNEL_VENUE_INFO) != null;
}
- private String getConnectedNotificationTitle(@NonNull Resources res,
- @NonNull TrackedNetworkStatus status) {
- final String ssid = getSsid(status);
- if (TextUtils.isEmpty(ssid)) {
- return res.getString(R.string.connected);
- }
-
- return res.getString(R.string.connected_to_ssid_param1, ssid);
- }
-
private static String getNotificationTag(@NonNull Network network) {
return Long.toString(network.getNetworkHandle());
}