aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-06-11 15:49:04 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-06-11 15:49:04 +0000
commitce3c471a65411d06ce22524ced88c7f8d2dce38e (patch)
treebaa56576735b98e4a6167c1c9b13018e4d3061bb
parente9c7b8c38c43e772787de9b6d79a81356b36b948 (diff)
parent529cd5265bd8b0c468f3fcb8f46b9756b5d3350e (diff)
downloadContactsProvider-android13-frc-adbd-release.tar.gz
Snap for 8712302 from 529cd5265bd8b0c468f3fcb8f46b9756b5d3350e to tm-frc-adbd-releaset_frc_adb_330444000android13-frc-adbd-release
Change-Id: Ifd310d3d9a7a8f7460182e8f432530ebaee50cb3
-rw-r--r--res/values-pt-rBR/strings.xml2
-rw-r--r--res/values-pt/strings.xml2
-rw-r--r--src/com/android/providers/contacts/CallLogProvider.java8
-rw-r--r--src/com/android/providers/contacts/util/LogUtils.java5
-rw-r--r--tests/src/com/android/providers/contacts/CallLogProviderTest.java12
5 files changed, 24 insertions, 5 deletions
diff --git a/res/values-pt-rBR/strings.xml b/res/values-pt-rBR/strings.xml
index 3ffd077f..5cee4f36 100644
--- a/res/values-pt-rBR/strings.xml
+++ b/res/values-pt-rBR/strings.xml
@@ -26,7 +26,7 @@
<string name="local_invisible_directory" msgid="705244318477396120">"Outros"</string>
<string name="voicemail_from_column" msgid="435732568832121444">"Correio de voz de "</string>
<string name="debug_dump_title" msgid="4916885724165570279">"Copiar banco de dados de contatos"</string>
- <string name="debug_dump_database_message" msgid="406438635002392290">"Você está prestes a 1) fazer uma cópia de seu banco de dados no armazenamento interno, com todas as informações relacionadas aos contatos e todo o histórico de chamadas e 2) enviar essa cópia por e-mail. Lembre-se de excluir a cópia, logo que você a tiver copiado do dispositivo ou que o e-mail for recebido."</string>
+ <string name="debug_dump_database_message" msgid="406438635002392290">"Você está prestes a 1) fazer uma cópia de seu banco de dados no armazenamento interno, com todas as informações relacionadas aos contatos e todo o histórico de ligações e 2) enviar essa cópia por e-mail. Lembre-se de excluir a cópia, logo que você a tiver copiado do dispositivo ou que o e-mail for recebido."</string>
<string name="debug_dump_delete_button" msgid="7832879421132026435">"Excluir agora"</string>
<string name="debug_dump_start_button" msgid="2837506913757600001">"Iniciar"</string>
<string name="debug_dump_email_sender_picker" msgid="3534420908672176460">"Escolha um programa para enviar o arquivo"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 3ffd077f..5cee4f36 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -26,7 +26,7 @@
<string name="local_invisible_directory" msgid="705244318477396120">"Outros"</string>
<string name="voicemail_from_column" msgid="435732568832121444">"Correio de voz de "</string>
<string name="debug_dump_title" msgid="4916885724165570279">"Copiar banco de dados de contatos"</string>
- <string name="debug_dump_database_message" msgid="406438635002392290">"Você está prestes a 1) fazer uma cópia de seu banco de dados no armazenamento interno, com todas as informações relacionadas aos contatos e todo o histórico de chamadas e 2) enviar essa cópia por e-mail. Lembre-se de excluir a cópia, logo que você a tiver copiado do dispositivo ou que o e-mail for recebido."</string>
+ <string name="debug_dump_database_message" msgid="406438635002392290">"Você está prestes a 1) fazer uma cópia de seu banco de dados no armazenamento interno, com todas as informações relacionadas aos contatos e todo o histórico de ligações e 2) enviar essa cópia por e-mail. Lembre-se de excluir a cópia, logo que você a tiver copiado do dispositivo ou que o e-mail for recebido."</string>
<string name="debug_dump_delete_button" msgid="7832879421132026435">"Excluir agora"</string>
<string name="debug_dump_start_button" msgid="2837506913757600001">"Iniciar"</string>
<string name="debug_dump_email_sender_picker" msgid="3534420908672176460">"Escolha um programa para enviar o arquivo"</string>
diff --git a/src/com/android/providers/contacts/CallLogProvider.java b/src/com/android/providers/contacts/CallLogProvider.java
index b2674834..da2d0b8a 100644
--- a/src/com/android/providers/contacts/CallLogProvider.java
+++ b/src/com/android/providers/contacts/CallLogProvider.java
@@ -54,6 +54,7 @@ import android.provider.CallLog.Calls;
import android.telecom.PhoneAccount;
import android.telecom.PhoneAccountHandle;
import android.telecom.TelecomManager;
+import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
@@ -1349,8 +1350,11 @@ public class CallLogProvider extends ContentProvider {
PhoneAccountHandle phoneAccountHandle = (PhoneAccountHandle) arg;
String iccId = null;
try {
- iccId = mSubscriptionManager.getActiveSubscriptionInfo(
- Integer.parseInt(phoneAccountHandle.getId())).getIccId();
+ SubscriptionInfo info = mSubscriptionManager.getActiveSubscriptionInfo(
+ Integer.parseInt(phoneAccountHandle.getId()));
+ if (info != null) {
+ iccId = info.getIccId();
+ }
} catch (NumberFormatException nfe) {
// Ignore the exception, iccId will remain null and be handled below.
}
diff --git a/src/com/android/providers/contacts/util/LogUtils.java b/src/com/android/providers/contacts/util/LogUtils.java
index 368411c7..23e2b140 100644
--- a/src/com/android/providers/contacts/util/LogUtils.java
+++ b/src/com/android/providers/contacts/util/LogUtils.java
@@ -54,6 +54,9 @@ public class LogUtils {
private static final int STATSD_LOG_ATOM_ID = 301;
+
+ // The write methods must be called in the same order as the order of fields in the
+ // atom (frameworks/proto_logging/stats/atoms.proto) definition.
public static void log(LogFields logFields) {
StatsLog.write(StatsEvent.newBuilder()
.setAtomId(STATSD_LOG_ATOM_ID)
@@ -61,9 +64,9 @@ public class LogUtils {
.writeInt(logFields.getUriType())
.writeInt(getCallerType(logFields.isCallerIsSyncAdapter()))
.writeInt(getResultType(logFields.getException()))
- .writeInt(logFields.getTaskType())
.writeInt(logFields.getResultCount())
.writeLong(getLatencyMicros(logFields.getStartNanos()))
+ .writeInt(logFields.getTaskType())
.usePooledBuffer()
.build());
}
diff --git a/tests/src/com/android/providers/contacts/CallLogProviderTest.java b/tests/src/com/android/providers/contacts/CallLogProviderTest.java
index c7555823..a0a8483f 100644
--- a/tests/src/com/android/providers/contacts/CallLogProviderTest.java
+++ b/tests/src/com/android/providers/contacts/CallLogProviderTest.java
@@ -18,6 +18,8 @@ package com.android.providers.contacts;
import static android.provider.CallLog.Calls.MISSED_REASON_NOT_MISSED;
+import static com.android.providers.contacts.ContactsProvider2.BACKGROUND_TASK_MIGRATE_PHONE_ACCOUNT_HANDLES;
+
import static org.mockito.Mockito.eq;
import static org.mockito.Mockito.when;
@@ -736,6 +738,16 @@ public class CallLogProviderTest extends BaseContactsProvider2Test {
assertEquals(10, mCallLogProvider.getLastSyncTime(/* forShadow =*/ false));
}
+ public void testNullSubscriptionInfo() {
+ PhoneAccountHandle handle = new PhoneAccountHandle(new ComponentName(
+ TELEPHONY_PACKAGE, TELEPHONY_CLASS), TEST_PHONE_ACCOUNT_HANDLE_SUB_ID);
+ when(mSubscriptionManager.getActiveSubscriptionInfo(eq(
+ Integer.parseInt(TEST_PHONE_ACCOUNT_HANDLE_SUB_ID)))).thenReturn(null);
+
+ mCallLogProvider.performBackgroundTask(
+ BACKGROUND_TASK_MIGRATE_PHONE_ACCOUNT_HANDLES, handle);
+ }
+
private ContentValues getDefaultValues(int callType) {
ContentValues values = new ContentValues();
values.put(Calls.TYPE, callType);