Merge "Move RCS table creation flag to contract class"
diff --git a/assets/carrier_list.pb b/assets/carrier_list.pb
index b3842c6..9580a0b 100644
--- a/assets/carrier_list.pb
+++ b/assets/carrier_list.pb
Binary files differ
diff --git a/assets/carrier_list.textpb b/assets/carrier_list.textpb
index 43fc5d2..b55cf68 100644
--- a/assets/carrier_list.textpb
+++ b/assets/carrier_list.textpb
@@ -3401,9 +3401,10 @@
}
carrier_id {
canonical_id: 1475
- carrier_name: "Elisa Matkapuhelinpalvelut Ltd."
+ carrier_name: "Elisa"
carrier_attribute {
mccmnc_tuple: "24405"
+ mccmnc_tuple: "24421"
}
}
carrier_id {
@@ -3428,17 +3429,6 @@
}
}
carrier_id {
- canonical_id: 1479
- carrier_name: "Saunalahti Group Ltd."
- carrier_attribute {
- mccmnc_tuple: "24421"
- }
- carrier_attribute {
- mccmnc_tuple: "24405"
- imsi_prefix_xpattern: "2440541"
- }
-}
-carrier_id {
canonical_id: 1480
carrier_name: "Telia"
carrier_attribute {
@@ -6531,7 +6521,7 @@
}
carrier_id {
canonical_id: 1930
- carrier_name: "Nextel"
+ carrier_name: "Entel"
carrier_attribute {
mccmnc_tuple: "71617"
}
@@ -7074,6 +7064,10 @@
gid1: "0206"
}
carrier_attribute {
+ mccmnc_tuple: "23210"
+ gid1: "0306"
+ }
+ carrier_attribute {
mccmnc_tuple: "310120"
spn: "Fi Network"
spn: "nova"
@@ -9853,6 +9847,24 @@
}
}
carrier_id {
+ canonical_id: 2360
+ carrier_name: "Telefonica"
+ carrier_attribute {
+ mccmnc_tuple: "26203"
+ gid1: "010301"
+ gid1: "010901"
+ }
+}
+carrier_id {
+ canonical_id: 2361
+ carrier_name: "o2"
+ carrier_attribute {
+ mccmnc_tuple: "26207"
+ gid1: "010301"
+ gid1: "010901"
+ }
+}
+carrier_id {
canonical_id: 2362
carrier_name: "Vodacom"
carrier_attribute {
@@ -10153,4 +10165,83 @@
mccmnc_tuple: "22208"
}
}
-version: 6
+carrier_id {
+ canonical_id: 10000
+ carrier_name: "Tracfone-ATT"
+ carrier_attribute {
+ mccmnc_tuple: "310410"
+ gid1: "DDFF"
+ gid1: "DEFF"
+ }
+ parent_canonical_id: 2022
+}
+carrier_id {
+ canonical_id: 10001
+ carrier_name: "Tracfone-TMO"
+ carrier_attribute {
+ mccmnc_tuple: "310260"
+ gid1: "DDFF"
+ gid1: "DEFF"
+ }
+ parent_canonical_id: 2022
+}
+carrier_id {
+ canonical_id: 10002
+ carrier_name: "o2prepaid_gb"
+ carrier_attribute {
+ mccmnc_tuple: "23410"
+ gid1: "61"
+ gid1: "67"
+ gid1: "85"
+ gid1: "99"
+ }
+ parent_canonical_id: 1492
+}
+carrier_id {
+ canonical_id: 10003
+ carrier_name: "o2prepaid_de"
+ carrier_attribute {
+ mccmnc_tuple: "26207"
+ imsi_prefix_xpattern: "2620749"
+ }
+ parent_canonical_id: 1454
+}
+carrier_id {
+ canonical_id: 10004
+ carrier_name: "sprintprepaid_us"
+ carrier_attribute {
+ mccmnc_tuple: "310120"
+ gid1: "000004"
+ }
+ parent_canonical_id: 1788
+}
+carrier_id {
+ canonical_id: 10005
+ carrier_name: "pcmobile_prepaid_bell"
+ carrier_attribute {
+ mccmnc_tuple: "30264"
+ mccmnc_tuple: "302610"
+ mccmnc_tuple: "302630"
+ mccmnc_tuple: "302640"
+ gid1: "40"
+ }
+ parent_canonical_id: 2053
+}
+carrier_id {
+ canonical_id: 10006
+ carrier_name: "pcmobile_postpaid_telus"
+ carrier_attribute {
+ mccmnc_tuple: "302220"
+ mccmnc_tuple: "302221"
+ gid1: "5043"
+ }
+ parent_canonical_id: 2053
+}
+carrier_id {
+ canonical_id: 10007
+ carrier_name: "docomo_mvno"
+ carrier_attribute {
+ mccmnc_tuple: "44010"
+ }
+}
+version: 7
diff --git a/src/com/android/providers/telephony/CarrierDatabaseHelper.java b/src/com/android/providers/telephony/CarrierDatabaseHelper.java
index b654a77..0b97da1 100644
--- a/src/com/android/providers/telephony/CarrierDatabaseHelper.java
+++ b/src/com/android/providers/telephony/CarrierDatabaseHelper.java
@@ -40,6 +40,7 @@
*/
public CarrierDatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
+ setWriteAheadLoggingEnabled(false);
}
public static final String KEY_TYPE = "key_type";
diff --git a/src/com/android/providers/telephony/CarrierIdProvider.java b/src/com/android/providers/telephony/CarrierIdProvider.java
index 77093a6..97d496b 100644
--- a/src/com/android/providers/telephony/CarrierIdProvider.java
+++ b/src/com/android/providers/telephony/CarrierIdProvider.java
@@ -30,7 +30,9 @@
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteQueryBuilder;
import android.net.Uri;
+import android.os.Build;
import android.os.Environment;
+import android.os.SystemProperties;
import android.provider.Telephony.CarrierId;
import android.telephony.SubscriptionManager;
import android.text.TextUtils;
@@ -383,6 +385,7 @@
cv = new ContentValues();
cv.put(CarrierId.CARRIER_ID, id.canonicalId);
cv.put(CarrierId.CARRIER_NAME, id.carrierName);
+ cv.put(CarrierId.PARENT_CARRIER_ID, id.parentCanonicalId);
cvs = new ArrayList<>();
convertCarrierAttrToContentValues(cv, cvs, attr, 0);
for (ContentValues contentVal : cvs) {
@@ -542,7 +545,10 @@
carrierList = assets;
version = assets.version;
}
- if (ota != null && ota.version > version) {
+ // bypass version check for ota carrier id test
+ if (ota != null && ((Build.IS_DEBUGGABLE && SystemProperties.getBoolean(
+ "persist.telephony.test.carrierid.ota", false))
+ || (ota.version > version))) {
carrierList = ota;
version = ota.version;
}
diff --git a/src/com/android/providers/telephony/HbpcdLookupDatabaseHelper.java b/src/com/android/providers/telephony/HbpcdLookupDatabaseHelper.java
index 2debc57..0149687 100644
--- a/src/com/android/providers/telephony/HbpcdLookupDatabaseHelper.java
+++ b/src/com/android/providers/telephony/HbpcdLookupDatabaseHelper.java
@@ -102,6 +102,7 @@
mContext = context;
// Memory optimization - close idle connections after 30s of inactivity
setIdleConnectionTimeout(IDLE_CONNECTION_TIMEOUT_MS);
+ setWriteAheadLoggingEnabled(false);
}
@Override
diff --git a/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java b/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
index 66a0a76..3d3711a 100644
--- a/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
+++ b/src/com/android/providers/telephony/MmsSmsDatabaseHelper.java
@@ -297,6 +297,7 @@
} catch (IllegalArgumentException e) {
// ignore
}
+ setWriteAheadLoggingEnabled(false);
}
private static synchronized MmsSmsDatabaseErrorHandler getDbErrorHandler(Context context) {
diff --git a/src/com/android/providers/telephony/RcsProviderEventHelper.java b/src/com/android/providers/telephony/RcsProviderEventHelper.java
index cf72c3b..c6a6fc6 100644
--- a/src/com/android/providers/telephony/RcsProviderEventHelper.java
+++ b/src/com/android/providers/telephony/RcsProviderEventHelper.java
@@ -15,6 +15,7 @@
*/
package com.android.providers.telephony;
+import static android.provider.Telephony.RcsColumns.RcsEventTypes.PARTICIPANT_ALIAS_CHANGED_EVENT_TYPE;
import static android.provider.Telephony.RcsColumns.RcsParticipantColumns.RCS_PARTICIPANT_ID_COLUMN;
import static android.provider.Telephony.RcsColumns.RcsParticipantEventColumns.NEW_ALIAS_COLUMN;
import static android.provider.Telephony.RcsColumns.RcsEventTypes.ICON_CHANGED_EVENT_TYPE;
@@ -92,16 +93,19 @@
// The following is a unified event view that puts every entry in both tables into one query
db.execSQL("CREATE VIEW " + RCS_UNIFIED_EVENT_VIEW + " AS "
- + "SELECT 1 AS event_type, event_id, originating_participant, "
- + "origination_timestamp, old_alias, new_alias, NULL as rcs_thread_id, NULL as "
- + "destination_participant, NULL as old_icon_uri, NULL as new_icon_uri, NULL as "
- + "old_name, NULL as new_name "
- + "FROM rcs_participant_event"
- + " UNION "
- + "SELECT event_type, event_id, originating_participant, origination_timestamp, "
- + "NULL as old_alias, NULL as new_alias, rcs_thread_id, destination_participant, "
- + "old_icon_uri, new_icon_uri, old_name, new_name "
- + "FROM rcs_thread_event");
+ + "SELECT " + PARTICIPANT_ALIAS_CHANGED_EVENT_TYPE + " AS " + EVENT_TYPE_COLUMN
+ + ", " + EVENT_ID_COLUMN + ", " + SOURCE_PARTICIPANT_ID_COLUMN + ", "
+ + TIMESTAMP_COLUMN + ", " + NEW_ALIAS_COLUMN + ", NULL as " + RCS_THREAD_ID_COLUMN
+ + ", NULL as " + DESTINATION_PARTICIPANT_ID_COLUMN + ", NULL as "
+ + NEW_ICON_URI_COLUMN + ", NULL as " + NEW_NAME_COLUMN + " "
+ + "FROM " + RCS_PARTICIPANT_EVENT_TABLE + " "
+ + "UNION "
+ + "SELECT " + EVENT_TYPE_COLUMN + ", " + EVENT_ID_COLUMN + ", "
+ + SOURCE_PARTICIPANT_ID_COLUMN + ", " + TIMESTAMP_COLUMN + ", "
+ + "NULL as " + NEW_ALIAS_COLUMN + ", " + RCS_THREAD_ID_COLUMN + ", "
+ + DESTINATION_PARTICIPANT_ID_COLUMN + ", " + NEW_ICON_URI_COLUMN + ", "
+ + NEW_NAME_COLUMN + " "
+ + "FROM " + RCS_THREAD_EVENT_TABLE);
}
private final SQLiteOpenHelper mSqLiteOpenHelper;
diff --git a/src/com/android/providers/telephony/TelephonyProvider.java b/src/com/android/providers/telephony/TelephonyProvider.java
index 071005b..9535e30 100644
--- a/src/com/android/providers/telephony/TelephonyProvider.java
+++ b/src/com/android/providers/telephony/TelephonyProvider.java
@@ -481,6 +481,7 @@
mContext = context;
// Memory optimization - close idle connections after 30s of inactivity
setIdleConnectionTimeout(IDLE_CONNECTION_TIMEOUT_MS);
+ setWriteAheadLoggingEnabled(false);
}
@VisibleForTesting