Hello, I keep getting crashes while trying to export contacts:
09-15 15:14:56.420 8622 8622 E AndroidRuntime: FATAL EXCEPTION: main
09-15 15:14:56.420 8622 8622 E AndroidRuntime: Process: com.github.tmo1.sms_ie, PID: 8622
09-15 15:14:56.420 8622 8622 E AndroidRuntime: android.database.sqlite.SQLiteException: unknown error (code 0 SQLITE_OK): Unable to convert BLOB to string
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.CursorWindow.nativeGetString(Native Method)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.CursorWindow.getString(CursorWindow.java:469)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.AbstractWindowedCursor.getString(AbstractWindowedCursor.java:53)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.CursorWrapper.getString(CursorWrapper.java:141)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at com.github.tmo1.sms_ie.ImportExportContactsKt.contactsToJSON(ImportExportContacts.kt:135)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at com.github.tmo1.sms_ie.ImportExportContactsKt.access$contactsToJSON(ImportExportContacts.kt:1)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at com.github.tmo1.sms_ie.ImportExportContactsKt$contactsToJSON$1.invokeSuspend(Unknown Source:13)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
The generated file ends with the following fragment within raw_contacts.contacts_data section (personal information replaced with XXXXX and YYYYYY):
Hello, I keep getting crashes while trying to export contacts:
09-15 15:14:56.420 8622 8622 E AndroidRuntime: FATAL EXCEPTION: main 09-15 15:14:56.420 8622 8622 E AndroidRuntime: Process: com.github.tmo1.sms_ie, PID: 8622 09-15 15:14:56.420 8622 8622 E AndroidRuntime: android.database.sqlite.SQLiteException: unknown error (code 0 SQLITE_OK): Unable to convert BLOB to string 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.CursorWindow.nativeGetString(Native Method) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.CursorWindow.getString(CursorWindow.java:469) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.AbstractWindowedCursor.getString(AbstractWindowedCursor.java:53) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at android.database.CursorWrapper.getString(CursorWrapper.java:141) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at com.github.tmo1.sms_ie.ImportExportContactsKt.contactsToJSON(ImportExportContacts.kt:135) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at com.github.tmo1.sms_ie.ImportExportContactsKt.access$contactsToJSON(ImportExportContacts.kt:1) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at com.github.tmo1.sms_ie.ImportExportContactsKt$contactsToJSON$1.invokeSuspend(Unknown Source:13) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678) 09-15 15:14:56.420 8622 8622 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
The generated file ends with the following fragment within raw_contacts.contacts_data section (personal information replaced with XXXXX and YYYYYY):
The referenced contact indeed has a photo attached to it (unlike some other contact which was exported to the file correctly).