New SMS and MMS APIs and semantics (3/4)
New SMS and MMS database columns: archived and creator
b/14095333
Change-Id: I4d79014c12ac622b098c1b7892134ce842f70f83
diff --git a/src/com/android/providers/telephony/MmsProvider.java b/src/com/android/providers/telephony/MmsProvider.java
index bc382fd..ed5ea8d 100644
--- a/src/com/android/providers/telephony/MmsProvider.java
+++ b/src/com/android/providers/telephony/MmsProvider.java
@@ -65,7 +65,7 @@
@Override
public boolean onCreate() {
- if (!Telephony.NEW_API) {
+ if (!Telephony.AUTO_PERSIST) {
// TODO(ywen): Temporarily enable this so not to break existing apps
setAppOps(AppOpsManager.OP_READ_SMS, AppOpsManager.OP_WRITE_SMS);
}
diff --git a/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java b/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
index 58ec263..b79e36a 100644
--- a/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
+++ b/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
@@ -215,7 +215,7 @@
private static boolean sFakeLowStorageTest = false; // for testing only
static final String DATABASE_NAME = "mmssms.db";
- static final int DATABASE_VERSION = 58;
+ static final int DATABASE_VERSION = 59;
private final Context mContext;
private LowStorageMonitor mLowStorageMonitor;
@@ -594,6 +594,8 @@
Mms.LOCKED + " INTEGER DEFAULT 0," +
Mms.SUB_ID + " INTEGER DEFAULT -1, " +
Mms.SEEN + " INTEGER DEFAULT 0," +
+ Mms.ARCHIVED + " INTEGER DEFAULT 0," +
+ Mms.CREATOR + " TEXT," +
Mms.TEXT_ONLY + " INTEGER DEFAULT 0" +
");");
@@ -838,6 +840,8 @@
"locked INTEGER DEFAULT 0," +
"sub_id INTEGER DEFAULT -1, " +
"error_code INTEGER DEFAULT 0," +
+ "archived INTEGER DEFAULT 0," +
+ "creator TEXT," +
"seen INTEGER DEFAULT 0" +
");");
@@ -1293,6 +1297,22 @@
} finally {
db.endTransaction();
}
+ // fall through
+ case 58:
+ if (currentVersion <= 58) {
+ return;
+ }
+
+ db.beginTransaction();
+ try {
+ upgradeDatabaseToVersion59(db);
+ db.setTransactionSuccessful();
+ } catch (Throwable ex) {
+ Log.e(TAG, ex.getMessage(), ex);
+ break;
+ } finally {
+ db.endTransaction();
+ }
return;
}
@@ -1505,6 +1525,17 @@
+ Sms.SUB_ID + " INTEGER DEFAULT -1");
}
+ private void upgradeDatabaseToVersion59(SQLiteDatabase db) {
+ db.execSQL("ALTER TABLE " + MmsProvider.TABLE_PDU +" ADD COLUMN "
+ + Mms.ARCHIVED + " INTEGER DEFAULT 0");
+ db.execSQL("ALTER TABLE " + MmsProvider.TABLE_PDU +" ADD COLUMN "
+ + Mms.CREATOR + " TEXT");
+ db.execSQL("ALTER TABLE " + SmsProvider.TABLE_SMS +" ADD COLUMN "
+ + Sms.ARCHIVED + " INTEGER DEFAULT 0");
+ db.execSQL("ALTER TABLE " + SmsProvider.TABLE_SMS +" ADD COLUMN "
+ + Sms.CREATOR + " TEXT");
+ }
+
@Override
public synchronized SQLiteDatabase getWritableDatabase() {
SQLiteDatabase db = super.getWritableDatabase();
diff --git a/src/com/android/providers/telephony/MmsSmsProvider.java b/src/com/android/providers/telephony/MmsSmsProvider.java
index e07fe54..3c6fae9 100644
--- a/src/com/android/providers/telephony/MmsSmsProvider.java
+++ b/src/com/android/providers/telephony/MmsSmsProvider.java
@@ -285,7 +285,7 @@
@Override
public boolean onCreate() {
- if (!Telephony.NEW_API) {
+ if (!Telephony.AUTO_PERSIST) {
// TODO(ywen): Temporarily enable this so not to break existing apps
setAppOps(AppOpsManager.OP_READ_SMS, AppOpsManager.OP_WRITE_SMS);
}
diff --git a/src/com/android/providers/telephony/SmsProvider.java b/src/com/android/providers/telephony/SmsProvider.java
index 33dd4ba..89736e5 100644
--- a/src/com/android/providers/telephony/SmsProvider.java
+++ b/src/com/android/providers/telephony/SmsProvider.java
@@ -84,7 +84,7 @@
@Override
public boolean onCreate() {
- if (!Telephony.NEW_API) {
+ if (!Telephony.AUTO_PERSIST) {
// TODO(ywen): Temporarily enable this so not to break existing apps
setAppOps(AppOpsManager.OP_READ_SMS, AppOpsManager.OP_WRITE_SMS);
}
diff --git a/src/com/android/providers/telephony/SmsWritePermission.java b/src/com/android/providers/telephony/SmsWritePermission.java
index 502bf14..186a75f 100644
--- a/src/com/android/providers/telephony/SmsWritePermission.java
+++ b/src/com/android/providers/telephony/SmsWritePermission.java
@@ -28,7 +28,7 @@
public static final String TAG = "SmsWritePermission";
public static void enforce() {
- if (!Telephony.NEW_API) {
+ if (!Telephony.AUTO_PERSIST) {
// TODO(ywen): Temporarily disable this so not to break existing apps
return;
}