sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (2024)

Erstellt am 11. Okt. 2020 · 4Kommentare · Quelle: cashapp/sqldelight

Build-Umgebung
Android Studio: 4.1 RC
SQLDelight-Version: 1.4.4
Betriebssystem: iOS 13,14
Gradle-Version:
Kotlin-Version: 1.4.10, KMM 0.1.3
AGP-Version (falls zutreffend):

Beschreibe den Fehler
Verwenden der neuesten Plugins 1.4.3 für SQL Delight und Android 4.1 RC. Der Kompilierungsfehler wird immer noch ohne com.squareup.sqldelight.drivers.native.NativeSqliteDriver angezeigt

bug

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (1) sreexamus

👍15🚀11

Hilfreichster Kommentar

In Gradle Version 4.1.0 verwende ich denselben Gradle-Build gemäß dem Tutorial unter https://kotlinlang.org/docs/mobile/discover-kmm-project.html#ios -framework. Nach dem Hinzufügen der Zeilen haben Sie vorgeschlagen, den nativen Treiber zu finden und den Code zu kompilieren. Vielen Dank!

Der Vollständigkeit halber hier die geteilten gradle.build.kts, die ich jetzt habe:

import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetplugins { kotlin("multiplatform") id("com.android.library") id("kotlin-android-extensions") id("com.squareup.sqldelight")}group = "es.elhaso.lazers"version = "1.0-SNAPSHOT"repositories { gradlePluginPortal() google() jcenter() mavenCentral()}kotlin { android() ios { binaries { framework { baseName = "shared" } } } // Block from https://github.com/cashapp/sqldelight/issues/2044#issuecomment-721299517. val onPhone = System.getenv("SDK_NAME")?.startsWith("iphoneos") ?: false if (onPhone) { iosArm64("ios") } else { iosX64("ios") } sourceSets { val commonMain by getting val commonTest by getting { dependencies { implementation(kotlin("test-common")) implementation(kotlin("test-annotations-common")) implementation("com.squareup.sqldelight:runtime:${Versions.sqlDelight}") } } val androidMain by getting { dependencies { implementation("com.google.android.material:material:1.2.0") implementation("com.squareup.okhttp3:okhttp:${Versions.okhttp}") implementation("com.squareup.sqldelight:android-driver:${Versions.sqlDelight}") } } val androidTest by getting { dependencies { implementation(kotlin("test-junit")) implementation("junit:junit:4.12") } } val iosMain by getting { dependencies { implementation("com.squareup.sqldelight:native-driver:${Versions.sqlDelight}") } } val iosTest by getting }}sqldelight { database("AppDatabase") { packageName = "es.elhaso.lazers.db" }}android { compileSdkVersion(29) sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") defaultConfig { minSdkVersion(24) targetSdkVersion(29) versionCode = 1 versionName = "1.0" } buildTypes { getByName("release") { isMinifyEnabled = false } }}val packForXcode by tasks.creating(Sync::class) { group = "build" val mode = System.getenv("CONFIGURATION") ?: "DEBUG" val sdkName = System.getenv("SDK_NAME") ?: "iphonesimulator" val targetName = "ios" + if (sdkName.startsWith("iphoneos")) "Arm64" else "X64" val framework = kotlin.targets.getByName<KotlinNativeTarget>(targetName).binaries.getFramework(mode) inputs.property("mode", mode) dependsOn(framework.linkTask) val targetDir = File(buildDir, "xcode-frameworks") from({ framework.outputDirectory }) into(targetDir)}tasks.getByName("build").dependsOn(packForXcode)

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (2) chokokatana am 3. Nov. 2020

👍14

Alle 4 Kommentare

Gleiches gilt für sqlDelight 1.4.4, Android Studio 4.1. Erreicht https://kotlinlang.org/docs/mobile/configure-sqldelight-for-data-storage.html#table -operations, kann aber nicht weiterentwickelt werden, da der NativeSqliteDriver aus irgendeinem Grund unter iOS nicht gefunden wird (aber für funktioniert) Android):

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (3)

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (4) chokokatana am 3. Nov. 2020

Bitte posten Sie Ihre ios-Quellensatzkonfiguration sowie die Gradle-Version. Wenn Sie die kombinierte Zielkonfiguration ios() , tritt dieses Problem auf. Wir verwenden immer noch:

val onPhone = System.getenv("SDK_NAME")?.startsWith("iphoneos") ?: false if (onPhone) { iosArm64("ios") } else { iosX64("ios") }

für unsere App dev. Ich werde versuchen, bald zur hierarchischen Einstellung zu wechseln, hatte aber Probleme.

Beispiel hier: https://github.com/touchlab/KaMPKit/blob/master/shared/build.gradle.kts#L28

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (5) kpgalligan am 3. Nov. 2020

In Gradle Version 4.1.0 verwende ich denselben Gradle-Build gemäß dem Tutorial unter https://kotlinlang.org/docs/mobile/discover-kmm-project.html#ios -framework. Nach dem Hinzufügen der Zeilen haben Sie vorgeschlagen, den nativen Treiber zu finden und den Code zu kompilieren. Vielen Dank!

Der Vollständigkeit halber hier die geteilten gradle.build.kts, die ich jetzt habe:

import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetplugins { kotlin("multiplatform") id("com.android.library") id("kotlin-android-extensions") id("com.squareup.sqldelight")}group = "es.elhaso.lazers"version = "1.0-SNAPSHOT"repositories { gradlePluginPortal() google() jcenter() mavenCentral()}kotlin { android() ios { binaries { framework { baseName = "shared" } } } // Block from https://github.com/cashapp/sqldelight/issues/2044#issuecomment-721299517. val onPhone = System.getenv("SDK_NAME")?.startsWith("iphoneos") ?: false if (onPhone) { iosArm64("ios") } else { iosX64("ios") } sourceSets { val commonMain by getting val commonTest by getting { dependencies { implementation(kotlin("test-common")) implementation(kotlin("test-annotations-common")) implementation("com.squareup.sqldelight:runtime:${Versions.sqlDelight}") } } val androidMain by getting { dependencies { implementation("com.google.android.material:material:1.2.0") implementation("com.squareup.okhttp3:okhttp:${Versions.okhttp}") implementation("com.squareup.sqldelight:android-driver:${Versions.sqlDelight}") } } val androidTest by getting { dependencies { implementation(kotlin("test-junit")) implementation("junit:junit:4.12") } } val iosMain by getting { dependencies { implementation("com.squareup.sqldelight:native-driver:${Versions.sqlDelight}") } } val iosTest by getting }}sqldelight { database("AppDatabase") { packageName = "es.elhaso.lazers.db" }}android { compileSdkVersion(29) sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") defaultConfig { minSdkVersion(24) targetSdkVersion(29) versionCode = 1 versionName = "1.0" } buildTypes { getByName("release") { isMinifyEnabled = false } }}val packForXcode by tasks.creating(Sync::class) { group = "build" val mode = System.getenv("CONFIGURATION") ?: "DEBUG" val sdkName = System.getenv("SDK_NAME") ?: "iphonesimulator" val targetName = "ios" + if (sdkName.startsWith("iphoneos")) "Arm64" else "X64" val framework = kotlin.targets.getByName<KotlinNativeTarget>(targetName).binaries.getFramework(mode) inputs.property("mode", mode) dependsOn(framework.linkTask) val targetDir = File(buildDir, "xcode-frameworks") from({ framework.outputDirectory }) into(targetDir)}tasks.getByName("build").dependsOn(packForXcode)

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (6) chokokatana am 3. Nov. 2020

👍14

Die Konfiguration im endgültigen kmm-Netzwerk- und Datenspeicher funktioniert für mich @chokokatana @sreexamus

... val iOSTarget: (String, KotlinNativeTarget.() -> Unit) -> KotlinNativeTarget = if (System.getenv("SDK_NAME")?.startsWith("iphoneos") == true) ::iosArm64 else ::iosX64 iOSTarget("ios") { binaries { framework { baseName = "shared" } } }....val packForXcode by tasks.creating(Sync::class) { group = "build" val mode = System.getenv("CONFIGURATION") ?: "DEBUG" val framework = kotlin.targets.getByName<KotlinNativeTarget>("ios").binaries.getFramework(mode) inputs.property("mode", mode) dependsOn(framework.linkTask) val targetDir = File(buildDir, "xcode-frameworks") from({ framework.outputDirectory }) into(targetDir)}tasks.getByName("build").dependsOn(packForXcode)

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (7) ernestkamara am 25. Nov. 2020

👍2

War diese Seite hilfreich?

0 / 5 - 0 Bewertungen

Verwandte Themen

Zuordnung zu Listen von Objekten hinzufügen

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (8) dimsuz · 5Kommentare

Generieren Sie die Creator-Wrapper-Methode, um eine einfache Konstruktorreferenz im Kotlin-Begleitobjekt zu ermöglichen

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (9) Takhion · 3Kommentare

Kotlin Gradle DSL unterstützen

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (10) LouisCAD · 5Kommentare

Filtern in ausgewählten Abfragen

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (11) aegis123 · 4Kommentare

Abfrage-Listener kann unter nativem/iOS nicht hinzugefügt werden

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (12) kuhnroyal · 4Kommentare

sqldelight 🚀 - Kein com.squareup.sqldelight.drivers.native.NativeSqliteDriver unter iOS | bleepcoder.com (2024)
Top Articles
Latest Posts
Article information

Author: Golda Nolan II

Last Updated:

Views: 6425

Rating: 4.8 / 5 (78 voted)

Reviews: 85% of readers found this page helpful

Author information

Name: Golda Nolan II

Birthday: 1998-05-14

Address: Suite 369 9754 Roberts Pines, West Benitaburgh, NM 69180-7958

Phone: +522993866487

Job: Sales Executive

Hobby: Worldbuilding, Shopping, Quilting, Cooking, Homebrewing, Leather crafting, Pet

Introduction: My name is Golda Nolan II, I am a thoughtful, clever, cute, jolly, brave, powerful, splendid person who loves writing and wants to share my knowledge and understanding with you.