From 5f66c653ed61cbaff17104fb1025aa72efb40faa Mon Sep 17 00:00:00 2001 From: Crustack Date: Sat, 30 May 2026 14:16:46 +0200 Subject: [PATCH 1/8] If crash export fails offer raw database export and import --- .../philkes/notallyx/data/NotallyDatabase.kt | 6 +- .../philkes/notallyx/data/dao/CommonDao.kt | 48 ++++-- .../notallyx/data/imports/ExternalImporter.kt | 3 +- .../notallyx/data/imports/NotesImporter.kt | 36 +++-- .../data/imports/evernote/EvernoteImporter.kt | 5 +- .../data/imports/google/GoogleKeepImporter.kt | 3 +- .../data/imports/json/JsonImporter.kt | 6 +- .../data/imports/quillpad/QuillpadImporter.kt | 3 +- .../data/imports/txt/PlainTextImporter.kt | 4 +- .../fragment/settings/SettingsFragment.kt | 64 ++++++-- .../presentation/viewmodel/BaseNoteModel.kt | 33 ++-- .../notallyx/utils/AndroidExtensions.kt | 40 ++++- .../philkes/notallyx/utils/ErrorActivity.kt | 114 ++++++++++++- .../notallyx/utils/backup/ExportExtensions.kt | 17 ++ .../notallyx/utils/backup/ImportExtensions.kt | 151 +++++++++++------- app/src/main/res/drawable/database.xml | 10 ++ app/src/main/res/layout/dialog_error.xml | 3 - app/src/main/res/values/strings.xml | 11 ++ app/translations.xlsx | Bin 178690 -> 181688 bytes 19 files changed, 431 insertions(+), 126 deletions(-) create mode 100644 app/src/main/res/drawable/database.xml diff --git a/app/src/main/java/com/philkes/notallyx/data/NotallyDatabase.kt b/app/src/main/java/com/philkes/notallyx/data/NotallyDatabase.kt index 7895e580..ed6c6a67 100644 --- a/app/src/main/java/com/philkes/notallyx/data/NotallyDatabase.kt +++ b/app/src/main/java/com/philkes/notallyx/data/NotallyDatabase.kt @@ -114,6 +114,10 @@ abstract class NotallyDatabase : RoomDatabase() { } } + fun clearInstance() { + instance = null + } + private var testInstance: NotallyDatabase? = null private fun getTestDatabase(context: ContextWrapper): NotallyDatabase { @@ -162,7 +166,7 @@ abstract class NotallyDatabase : RoomDatabase() { Migration8, Migration9, Migration10, - Migration11 + Migration11, ) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { System.loadLibrary("sqlcipher") diff --git a/app/src/main/java/com/philkes/notallyx/data/dao/CommonDao.kt b/app/src/main/java/com/philkes/notallyx/data/dao/CommonDao.kt index e4965f51..17852161 100644 --- a/app/src/main/java/com/philkes/notallyx/data/dao/CommonDao.kt +++ b/app/src/main/java/com/philkes/notallyx/data/dao/CommonDao.kt @@ -1,5 +1,6 @@ package com.philkes.notallyx.data.dao +import android.util.Log import androidx.room.Dao import androidx.room.Transaction import com.philkes.notallyx.data.NotallyDatabase @@ -46,7 +47,11 @@ abstract class CommonDao(private val database: NotallyDatabase) { } @Transaction - open suspend fun importBackup(baseNotes: List, labels: List