From 3d33698bf5d98a6480a9f6928d1f1e23d519cc08 Mon Sep 17 00:00:00 2001 From: Jack Yu Date: Fri, 25 Jan 2019 14:50:15 -0800 Subject: [PATCH] Added a broadcast intent for clients to listen for country changes Added a broadcast intent ACTION_NETWORK_COUNTRY_CHANGED for clients to listen for network country code changes. The same value can be retrieved from TelephonyManager.getNetworkCountryIso(). Test: Manual + unit tests Bug: 122900588 Change-Id: Ifec87dda7bae386118b7bc7523844342bd16c3ea --- api/current.txt | 2 ++ .../android/telephony/TelephonyManager.java | 22 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/api/current.txt b/api/current.txt index e1a36085fe11c..410d41005163d 100644 --- a/api/current.txt +++ b/api/current.txt @@ -44848,6 +44848,7 @@ package android.telephony { method @Deprecated public void setVoicemailVibrationEnabled(android.telecom.PhoneAccountHandle, boolean); method public boolean updateAvailableNetworks(java.util.List); field public static final String ACTION_CONFIGURE_VOICEMAIL = "android.telephony.action.CONFIGURE_VOICEMAIL"; + field public static final String ACTION_NETWORK_COUNTRY_CHANGED = "android.telephony.action.NETWORK_COUNTRY_CHANGED"; field @RequiresPermission(android.Manifest.permission.READ_PHONE_STATE) public static final String ACTION_PHONE_STATE_CHANGED = "android.intent.action.PHONE_STATE"; field public static final String ACTION_RESPOND_VIA_MESSAGE = "android.intent.action.RESPOND_VIA_MESSAGE"; field public static final String ACTION_SECRET_CODE = "android.telephony.action.SECRET_CODE"; @@ -44886,6 +44887,7 @@ package android.telephony { field public static final String EXTRA_INCOMING_NUMBER = "incoming_number"; field public static final String EXTRA_IS_REFRESH = "android.telephony.extra.IS_REFRESH"; field public static final String EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT = "android.telephony.extra.LAUNCH_VOICEMAIL_SETTINGS_INTENT"; + field public static final String EXTRA_NETWORK_COUNTRY = "android.telephony.extra.NETWORK_COUNTRY"; field public static final String EXTRA_NOTIFICATION_COUNT = "android.telephony.extra.NOTIFICATION_COUNT"; field public static final String EXTRA_PHONE_ACCOUNT_HANDLE = "android.telephony.extra.PHONE_ACCOUNT_HANDLE"; field public static final String EXTRA_PRECISE_CARRIER_ID = "android.telephony.extra.PRECISE_CARRIER_ID"; diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index e710e0e02c46c..51336123aca8c 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -10133,4 +10133,26 @@ public class TelephonyManager { } return ret; } + + /** + * Broadcast intent action for network country code changes. + * + *

+ * The {@link #EXTRA_NETWORK_COUNTRY} extra indicates the country code of the current + * network returned by {@link #getNetworkCountryIso()}. + * + * @see #EXTRA_NETWORK_COUNTRY + * @see #getNetworkCountryIso() + */ + public static final String ACTION_NETWORK_COUNTRY_CHANGED = + "android.telephony.action.NETWORK_COUNTRY_CHANGED"; + + /** + * The extra used with an {@link #ACTION_NETWORK_COUNTRY_CHANGED} to specify the + * the country code in ISO 3166 format. + *

+ * Retrieve with {@link android.content.Intent#getStringExtra(String)}. + */ + public static final String EXTRA_NETWORK_COUNTRY = + "android.telephony.extra.NETWORK_COUNTRY"; }