Move the intent to SMS namespace for database corruption detection
Test: Simulated and verified the new intend is used
Bug: 118658558
Bug: 115990430
Merged-in: I07a58d0fe1c34106b3da85d1dfd4576b40da4bd5
Change-Id: I07a58d0fe1c34106b3da85d1dfd4576b40da4bd5
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index b0a2979..d0ae9dbc 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -400,6 +400,7 @@
<protected-broadcast android:name="android.telecom.action.DEFAULT_DIALER_CHANGED" />
<protected-broadcast android:name="android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED" />
<protected-broadcast android:name="android.provider.action.SMS_MMS_DB_CREATED" />
+ <protected-broadcast android:name="android.provider.action.SMS_MMS_DB_LOST" />
<protected-broadcast android:name="android.intent.action.CONTENT_CHANGED" />
<protected-broadcast android:name="android.provider.Telephony.MMS_DOWNLOADED" />
diff --git a/telephony/java/android/provider/Telephony.java b/telephony/java/android/provider/Telephony.java
index d6814f9..5eb3a50 100644
--- a/telephony/java/android/provider/Telephony.java
+++ b/telephony/java/android/provider/Telephony.java
@@ -16,6 +16,7 @@
package android.provider;
+import android.annotation.RequiresPermission;
import android.annotation.SdkConstant;
import android.annotation.SdkConstant.SdkConstantType;
import android.annotation.TestApi;
@@ -1177,6 +1178,31 @@
*/
public static final String EXTRA_IS_INITIAL_CREATE =
"android.provider.extra.IS_INITIAL_CREATE";
+
+ /**
+ * Broadcast intent action indicating that the telephony provider SMS MMS database is
+ * corrupted. A boolean is specified in {@link #EXTRA_IS_CORRUPTED} to indicate if the
+ * database is corrupted. Requires the
+ * {@link android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE permission.
+ *
+ * @hide
+ */
+ @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
+ @RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
+ public static final String ACTION_SMS_MMS_DB_LOST =
+ "android.provider.action.SMS_MMS_DB_LOST";
+
+ /**
+ * Boolean flag passed as an extra with {@link #ACTION_SMS_MMS_DB_LOST} to indicate
+ * whether the DB got corrupted or not.
+ *
+ * @see #ACTION_SMS_MMS_DB_LOST
+ *
+ * @hide
+ */
+ public static final String EXTRA_IS_CORRUPTED =
+ "android.provider.extra.IS_CORRUPTED";
+
/**
* Read the PDUs out of an {@link #SMS_RECEIVED_ACTION} or a
* {@link #DATA_SMS_RECEIVED_ACTION} intent.
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 21a93fe..37cdb52 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -1177,38 +1177,6 @@
*/
public static final String EXTRA_RECOVERY_ACTION = "recoveryAction";
- /**
- * Broadcast intent action indicating that the telephony provider DB got lost.
- *
- * <p>
- * The {@link #EXTRA_IS_CORRUPTED} extra indicates whether the database is lost
- * due to corruption or not
- *
- * <p class="note">
- * Requires the MODIFY_PHONE_STATE permission.
- *
- * <p class="note">
- * This is a protected intent that can only be sent by the system.
- *
- * @see #EXTRA_IS_CORRUPTED
- *
- * @hide
- */
- @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
- @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE)
- public static final String ACTION_MMSSMS_DATABASE_LOST =
- "android.intent.action.MMSSMS_DATABASE_LOST";
-
- /**
- * A boolean extra used with {@link #ACTION_MMSSMS_DATABASE_LOST} to indicate
- * whether the database is lost due to corruption or not.
- *
- * @see #ACTION_MMSSMS_DATABASE_LOST
- *
- * @hide
- */
- public static final String EXTRA_IS_CORRUPTED = "isCorrupted";
-
//
//
// Device Info