@@ -4,14 +4,18 @@ import android.content.Context
4
4
import android.os.Handler
5
5
import android.os.Looper
6
6
import com.simplemobiletools.commons.activities.BaseSimpleActivity
7
+ import com.simplemobiletools.commons.helpers.ExportResult
7
8
import com.simplemobiletools.commons.helpers.PROTECTION_NONE
8
9
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
9
10
import com.simplemobiletools.notes.pro.R
10
11
import com.simplemobiletools.notes.pro.extensions.config
11
12
import com.simplemobiletools.notes.pro.extensions.notesDB
12
13
import com.simplemobiletools.notes.pro.models.Note
13
14
import com.simplemobiletools.notes.pro.models.NoteType
15
+ import kotlinx.serialization.encodeToString
16
+ import kotlinx.serialization.json.Json
14
17
import java.io.File
18
+ import java.io.OutputStream
15
19
16
20
class NotesHelper (val context : Context ) {
17
21
fun getNotes (callback : (notes: List <Note >) -> Unit ) {
@@ -124,6 +128,18 @@ class NotesHelper(val context: Context) {
124
128
}
125
129
}
126
130
131
+ fun exportNotes (notesToBackup : List <Note >, outputStream : OutputStream ): ExportResult {
132
+ return try {
133
+ val jsonString = Json .encodeToString(notesToBackup)
134
+ outputStream.use {
135
+ it.write(jsonString.toByteArray())
136
+ }
137
+ ExportResult .EXPORT_OK
138
+ } catch (_: Error ) {
139
+ ExportResult .EXPORT_FAIL
140
+ }
141
+ }
142
+
127
143
enum class ImportResult {
128
144
IMPORT_FAIL , IMPORT_OK , IMPORT_PARTIAL , IMPORT_NOTHING_NEW
129
145
}
0 commit comments