локальную базу данных можно сделать с помощью библиотеки Room (удобней Sqlite) и Dagger. Ниже простой рабочий
href="
https://yadi.sk/d/9Y7JeDhSHNODTQ?w=1"
пример приложения Room- локальная база данных, Dagger - подключить любой класс
package com.example.myapplicationroom.data.db.dbInstance
import android.content.Context
import androidx.room.Database
import androidx.room.Room
import androidx.room.RoomDatabase
import com.example.myapplicationroom.data.db.dao.EmployeeDao
import com.example.myapplicationroom.data.db.entity.Employee
@Database(
entities = [
Employee::class],
version = 1
)
abstract class LocalDatabase: RoomDatabase() {
abstract fun getEmployeeDao(): EmployeeDao
companion object {
@Volatile
private var INSTANCE: LocalDatabase? = null
fun getDatabase(context: Context): LocalDatabase {
val tempInstance = INSTANCE
if (tempInstance != null) {
return tempInstance
}
synchronized(this) {
val instance = Room.databaseBuilder(
context.applicationContext,
LocalDatabase::class.java,
"NoteDatabase"
).fallbackToDestructiveMigration().build()
// ^^^ Без миграции ^^^
INSTANCE = instance
return instance
}
}
}
}