From f019b21208ff3afeb7511c7a4257502334ea0355 Mon Sep 17 00:00:00 2001 From: Shuo Qian Date: Fri, 18 Oct 2019 15:10:35 -0700 Subject: [PATCH] Notify OTA Emergency Number Database Installation complete 1) Introduce a system api intent for notifying OTA emergency number database installation complete 2) Notify the installation complete in ConfigUpdater Test: Build Bug: 136027884 Change-Id: I62777e9e2a4a2cc3b5207c504884762768ad08e0 Merged-In: I62777e9e2a4a2cc3b5207c504884762768ad08e0 (cherry picked from commit 00a371061727e5658df0bcbbbb58434a41160397) --- api/system-current.txt | 1 + core/res/AndroidManifest.xml | 1 + .../updates/EmergencyNumberDbInstallReceiver.java | 8 +++++++- telephony/java/android/telephony/TelephonyManager.java | 10 ++++++++++ 4 files changed, 19 insertions(+), 1 deletion(-) diff --git a/api/system-current.txt b/api/system-current.txt index 9946f6dd3983e..1e6dee503b55b 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -8236,6 +8236,7 @@ package android.telephony { method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void toggleRadioOnOff(); method public void updateServiceLocation(); field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_ANOMALY_REPORTED = "android.telephony.action.ANOMALY_REPORTED"; + field @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) public static final String ACTION_OTA_EMERGENCY_NUMBER_DB_INSTALLED = "android.telephony.action.OTA_EMERGENCY_NUMBER_DB_INSTALLED"; field public static final String ACTION_SIM_APPLICATION_STATE_CHANGED = "android.telephony.action.SIM_APPLICATION_STATE_CHANGED"; field public static final String ACTION_SIM_CARD_STATE_CHANGED = "android.telephony.action.SIM_CARD_STATE_CHANGED"; field public static final String ACTION_SIM_SLOT_STATUS_CHANGED = "android.telephony.action.SIM_SLOT_STATUS_CHANGED"; diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 9aacbe65e480e..1f20d7afb983b 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -497,6 +497,7 @@ + diff --git a/services/core/java/com/android/server/updates/EmergencyNumberDbInstallReceiver.java b/services/core/java/com/android/server/updates/EmergencyNumberDbInstallReceiver.java index 852f70779f77d..cb0b45ceaf050 100644 --- a/services/core/java/com/android/server/updates/EmergencyNumberDbInstallReceiver.java +++ b/services/core/java/com/android/server/updates/EmergencyNumberDbInstallReceiver.java @@ -18,6 +18,7 @@ package com.android.server.updates; import android.content.Context; import android.content.Intent; +import android.telephony.TelephonyManager; import android.util.Slog; /** @@ -34,6 +35,11 @@ public class EmergencyNumberDbInstallReceiver extends ConfigUpdateInstallReceive @Override protected void postInstall(Context context, Intent intent) { Slog.i(TAG, "Emergency number database is updated in file partition"); - // TODO Send a notification to EmergencyNumberTracker for updating of emergency number db. + + // Notify EmergencyNumberTracker for emergency number installation complete. + Intent notifyInstallComplete = new Intent( + TelephonyManager.ACTION_OTA_EMERGENCY_NUMBER_DB_INSTALLED); + context.sendBroadcast( + notifyInstallComplete, android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE); } } diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java index c9440a66ab96b..6abe48ac466f3 100644 --- a/telephony/java/android/telephony/TelephonyManager.java +++ b/telephony/java/android/telephony/TelephonyManager.java @@ -10825,6 +10825,16 @@ public class TelephonyManager { } } + /** + * Broadcast intent action for Ota emergency number database installation complete. + * + * @hide + */ + @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) + @SystemApi + public static final String ACTION_OTA_EMERGENCY_NUMBER_DB_INSTALLED = + "android.telephony.action.OTA_EMERGENCY_NUMBER_DB_INSTALLED"; + /** * Returns whether {@link TelephonyManager#ACTION_EMERGENCY_ASSISTANCE emergency assistance} is * available on the device.