Ahmad Hassan
05/28/2023, 6:43 PMactual fun Scope.createDriver(): SqlDriver {
val context = androidContext()
val fileName = "dbFileName"
val database: File = context.getDatabasePath(fileName)
if (!database.exists()) {
val inputStream = context.assets.open(fileName)
val outputStream = FileOutputStream(database.absolutePath)
inputStream.use { input ->
outputStream.use {
input.copyTo(it)
}
}
}
return AndroidSqliteDriver(NoteDatabase.Schema, context, fileName)
}
What are the steps for the iOS side..?
thanks!Joel Denke
05/29/2023, 6:40 AMpackage com.jetbrains.handson.kmm.shared.cache
import com.squareup.sqldelight.db.SqlDriver
import com.squareup.sqldelight.drivers.native.NativeSqliteDriver
actual class DatabaseDriverFactory {
actual fun createDriver(): SqlDriver {
return NativeSqliteDriver(AppDatabase.Schema, "test.db")
}
}
Also see https://kotlinlang.org/docs/multiplatform-mobile-ktor-sqldelight.html#create-platform-database-driversAhmad Hassan
05/29/2023, 12:04 PMJoel Denke
05/29/2023, 12:30 PMAhmad Hassan
05/29/2023, 5:43 PMactual fun Scope.createDriver(): SqlDriver {
val context = androidContext()
val fileName = "dbFileName"
val database: File = context.getDatabasePath(fileName)
if (!database.exists()) {
val inputStream = context.assets.open(fileName)
val outputStream = FileOutputStream(database.absolutePath)
inputStream.use { input ->
outputStream.use {
input.copyTo(it)
}
}
}
return AndroidSqliteDriver(NoteDatabase.Schema, context, fileName)
}
Now looking for iOS implementation.