From f005c88c1e8b6c9288678e684df203c61a70c8d6 Mon Sep 17 00:00:00 2001 From: Quang Luong Date: Tue, 29 Jan 2019 16:32:03 -0800 Subject: [PATCH] Simplified OSU status strings in wifi picker OSU status and failure messages have been simplified to be more user friendly rather than reflect every status/failure code. Test tracker for adding robolectric tests: b/122849296 Bug: 118705403 Test: manual, build and visual check Change-Id: I8762c60d959f2d8500fbd1434e0f289d075bdbdb --- packages/SettingsLib/res/values/strings.xml | 82 ++----------- .../com/android/settingslib/wifi/AccessPoint.java | 132 ++++----------------- 2 files changed, 30 insertions(+), 184 deletions(-) diff --git a/packages/SettingsLib/res/values/strings.xml b/packages/SettingsLib/res/values/strings.xml index c8f8d737fb0e..116fc8bf568a 100644 --- a/packages/SettingsLib/res/values/strings.xml +++ b/packages/SettingsLib/res/values/strings.xml @@ -104,7 +104,7 @@ Available via %1$s - Tap to set up + Tap to sign up com.android.settings @@ -127,78 +127,16 @@ Available via %1$s - - Connection failed - - Invalid OSU server URL - - OSU server connection failed - - OSU server validation failed - - Invalid OSU server certificate - - Provisioning aborted - - Provisioning not available - - Invalid OSU server URL - - Unexpected command type - - Unexpected SOAP message type - - SOAP message exchange failed - - Redirect listener failed to start - - Timed out waiting for redirect - - No OSU activity found - - Unexpected SOAP message status - - Failed to find PPS-MO - - Failed to find trust root node for AAA server - - Failed to find trust root node for remediation server - - Failed to find trust root node for policy server - - Failed to retrieve trust root certificates - - Failed to find trust root certificate for AAA server - - Failed to add PassPoint configuration - - Failed to find an OSU provider - - - Connecting - - Connected - - Connecting to OSU server - - OSU server validated - - Connected to OSU server - - Initial SOAP exchange - - Waiting for redirect response - - Received redirect response - - Second SOAP exchange - - Third SOAP exchange - - Retrieving trust root certificates - + + Opening %1$s + + Couldn\u2019t connect + + Completing sign-up\u2026 + + Couldn\u2019t complete sign-up. Tap to try again. - Provisioning complete + Sign-up complete. Connecting\u2026 Very Slow diff --git a/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java b/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java index 9b12a31dc149..c59842c031c7 100644 --- a/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java +++ b/packages/SettingsLib/src/com/android/settingslib/wifi/AccessPoint.java @@ -888,13 +888,13 @@ public class AccessPoint implements Comparable { if (isOsuProvider()) { if (mOsuProvisioningComplete) { - summary.append(mContext.getString(R.string.osu_provisioning_complete)); + summary.append(mContext.getString(R.string.osu_sign_up_complete)); } else if (mOsuFailure != null) { summary.append(mOsuFailure); } else if (mOsuStatus != null) { summary.append(mOsuStatus); } else { - summary.append(mContext.getString(R.string.tap_to_set_up)); + summary.append(mContext.getString(R.string.tap_to_sign_up)); } } else if (isActive()) { if (isPasspoint()) { @@ -1528,91 +1528,12 @@ public class AccessPoint implements Comparable { * All methods are invoked on the Main Thread */ private class AccessPointProvisioningCallback extends ProvisioningCallback { - // TODO: Remove logs and implement summary changing logic for these provisioning callbacks. @Override @MainThread public void onProvisioningFailure(int status) { - switch (status) { - case OSU_FAILURE_AP_CONNECTION: - mOsuFailure = mContext.getString(R.string.osu_failure_ap_connection); - break; - case OSU_FAILURE_SERVER_URL_INVALID: - mOsuFailure = mContext.getString(R.string.osu_failure_server_url_invalid); - break; - case OSU_FAILURE_SERVER_CONNECTION: - mOsuFailure = mContext.getString(R.string.osu_failure_server_connection); - break; - case OSU_FAILURE_SERVER_VALIDATION: - mOsuFailure = mContext.getString(R.string.osu_failure_server_validation); - break; - case OSU_FAILURE_SERVICE_PROVIDER_VERIFICATION: - mOsuFailure = mContext.getString( - R.string.osu_failure_service_provider_verification); - break; - case OSU_FAILURE_PROVISIONING_ABORTED: - mOsuFailure = mContext.getString(R.string.osu_failure_provisioning_aborted); - break; - case OSU_FAILURE_PROVISIONING_NOT_AVAILABLE: - mOsuFailure = mContext.getString( - R.string.osu_failure_provisioning_not_available); - break; - case OSU_FAILURE_INVALID_URL_FORMAT_FOR_OSU: - mOsuFailure = mContext.getString(R.string.osu_failure_invalid_server_url); - break; - case OSU_FAILURE_UNEXPECTED_COMMAND_TYPE: - mOsuFailure = mContext.getString(R.string.osu_failure_unexpected_command_type); - break; - case OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_TYPE: - mOsuFailure = mContext.getString( - R.string.osu_failure_unexpected_soap_message_type); - break; - case OSU_FAILURE_SOAP_MESSAGE_EXCHANGE: - mOsuFailure = mContext.getString(R.string.osu_failure_soap_message_exchange); - break; - case OSU_FAILURE_START_REDIRECT_LISTENER: - mOsuFailure = mContext.getString(R.string.osu_failure_start_redirect_listener); - break; - case OSU_FAILURE_TIMED_OUT_REDIRECT_LISTENER: - mOsuFailure = mContext.getString( - R.string.osu_failure_timed_out_redirect_listener); - break; - case OSU_FAILURE_NO_OSU_ACTIVITY_FOUND: - mOsuFailure = mContext.getString(R.string.osu_failure_no_osu_activity_found); - break; - case OSU_FAILURE_UNEXPECTED_SOAP_MESSAGE_STATUS: - mOsuFailure = mContext.getString( - R.string.osu_failure_unexpected_soap_message_status); - break; - case OSU_FAILURE_NO_PPS_MO: - mOsuFailure = mContext.getString( - R.string.osu_failure_no_pps_mo); - break; - case OSU_FAILURE_NO_AAA_SERVER_TRUST_ROOT_NODE: - mOsuFailure = mContext.getString( - R.string.osu_failure_no_aaa_server_trust_root_node); - break; - case OSU_FAILURE_NO_REMEDIATION_SERVER_TRUST_ROOT_NODE: - mOsuFailure = mContext.getString( - R.string.osu_failure_no_remediation_server_trust_root_node); - break; - case OSU_FAILURE_NO_POLICY_SERVER_TRUST_ROOT_NODE: - mOsuFailure = mContext.getString( - R.string.osu_failure_no_policy_server_trust_root_node); - break; - case OSU_FAILURE_RETRIEVE_TRUST_ROOT_CERTIFICATES: - mOsuFailure = mContext.getString( - R.string.osu_failure_retrieve_trust_root_certificates); - break; - case OSU_FAILURE_NO_AAA_TRUST_ROOT_CERTIFICATE: - mOsuFailure = mContext.getString( - R.string.osu_failure_no_aaa_trust_root_certificate); - break; - case OSU_FAILURE_ADD_PASSPOINT_CONFIGURATION: - mOsuFailure = mContext.getString( - R.string.osu_failure_add_passpoint_configuration); - break; - case OSU_FAILURE_OSU_PROVIDER_NOT_FOUND: - mOsuFailure = mContext.getString(R.string.osu_failure_osu_provider_not_found); - break; + if (TextUtils.equals(mOsuStatus, mContext.getString(R.string.osu_completing_sign_up))) { + mOsuFailure = mContext.getString(R.string.osu_sign_up_failed); + } else { + mOsuFailure = mContext.getString(R.string.osu_connect_failed); } mOsuStatus = null; mOsuProvisioningComplete = false; @@ -1625,50 +1546,37 @@ public class AccessPoint implements Comparable { @Override @MainThread public void onProvisioningStatus(int status) { + String newStatus = null; switch (status) { case OSU_STATUS_AP_CONNECTING: - mOsuStatus = mContext.getString(R.string.osu_status_ap_connecting); - break; case OSU_STATUS_AP_CONNECTED: - mOsuStatus = mContext.getString(R.string.osu_status_ap_connected); - break; case OSU_STATUS_SERVER_CONNECTING: - mOsuStatus = mContext.getString(R.string.osu_status_server_connecting); - break; case OSU_STATUS_SERVER_VALIDATED: - mOsuStatus = mContext.getString(R.string.osu_status_server_validated); - break; case OSU_STATUS_SERVER_CONNECTED: - mOsuStatus = mContext.getString(R.string.osu_status_server_connected); - break; case OSU_STATUS_INIT_SOAP_EXCHANGE: - mOsuStatus = mContext.getString(R.string.osu_status_init_soap_exchange); - break; case OSU_STATUS_WAITING_FOR_REDIRECT_RESPONSE: - mOsuStatus = mContext.getString( - R.string.osu_status_waiting_for_redirect_response); + newStatus = String.format(mContext.getString(R.string.osu_opening_provider), + mOsuProvider.getFriendlyName()); break; case OSU_STATUS_REDIRECT_RESPONSE_RECEIVED: - mOsuStatus = mContext.getString(R.string.osu_status_redirect_response_received); - break; case OSU_STATUS_SECOND_SOAP_EXCHANGE: - mOsuStatus = mContext.getString(R.string.osu_status_second_soap_exchange); - break; case OSU_STATUS_THIRD_SOAP_EXCHANGE: - mOsuStatus = mContext.getString(R.string.osu_status_third_soap_exchange); - break; case OSU_STATUS_RETRIEVING_TRUST_ROOT_CERTS: - mOsuStatus = mContext.getString( - R.string.osu_status_retrieving_trust_root_certs); + newStatus = mContext.getString( + R.string.osu_completing_sign_up); break; } + boolean updated = !TextUtils.equals(mOsuStatus, newStatus); + mOsuStatus = newStatus; mOsuFailure = null; mOsuProvisioningComplete = false; - ThreadUtils.postOnMainThread(() -> { - if (mAccessPointListener != null) { - mAccessPointListener.onAccessPointChanged(AccessPoint.this); - } - }); + if (updated) { + ThreadUtils.postOnMainThread(() -> { + if (mAccessPointListener != null) { + mAccessPointListener.onAccessPointChanged(AccessPoint.this); + } + }); + } } @Override -- 2.11.0