2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Multiplatform Kotlin instrumentum est quod sinit nos scribere codicem in eadem programmandi lingua (Kotlin), quae diversis machinis simul currere potest, sicut telephoniis gestabilibus et interretialibus. Hoc faciens tempus salvat quia non necesse est eandem functionem pro singulis artificiis rescribere.
Pluma 1: Codex Socius – Logica, ut munus computationis, semel scribi potest, et tunc in utroque apps Android et iOS.
Pluma 2: codice Platform-specifico – Specific code pro unoquoque tribunali scribi potest ut features singulares in suggestu pertractet, ut instrumentum photographicum utens. Exempli causa, utere Camera Android API ut picturas in applicatione Android, et usum iOS UIImagePickerController in applicatione iOS ad imagines capiendas.
Pluma 3: Interoperabilitas - Kotlin Multiplatformia cum exsistenti Java, Celeri vel Objectivo-C codice interoperari potest, ut facile in exsistentia incepta integrare possit.
Pluma 4: variae periodi compilatio - signum in androidMain compilavit utens kotlin/jvm in codice quem Android intelligere potest, et signum in iosMain exaratum est utens kotlin/nativum in codice qui ios intellegere potest.
gradum;
1. Definire logicam communem: Primum logicam communi negotio definire in communi modulo (id est communi). -end communicatio.
Logica communicata (communia);
import kotlin.random.Random
class Greeting {
private val platform: Platform = getPlatform()
fun greet(): String {
val firstWord = if (Random.nextBoolean()) "Hi!" else "Hello!"
return "$firstWord Guess what this is! > ${platform.name.reversed()}!"
}
}
Codex superior in signo crucis-Kmp communicatus est. Hi codices in utroque Android et iOS currere possunt. Sed hic codex tandem filum format. terminatio, quia modus obtinendi suggestum est.nomen in kotlin syntaxi differt in Android et ios, ideo definire debemus excusationem ad indicandum androidMain et iosMain, et tu duo das logicam obtinendi suggestum. nomen respective cum ea, ac deinde logicam hanc efficiendi incipiunt
interface Platform {
val name: String
}
expect fun getPlatform(): Platform
2. Exsecutio rostris-specialis: In androidMain et iosMain, exsecutionem instrumenti in communi praebent, et codicem scribe ad nonnulla requisita suggestuum specialium.
Android suggestum exsecutio (androidMain):
import android.os.Build
class AndroidPlatform : Platform {
override val name: String = "Android ${Build.VERSION.SDK_INT}"
}
actual fun getPlatform(): Platform = AndroidPlatform()
iOS suggestus exsecutio (iosMain);
import platform.UIKit.UIDevice
class IOSPlatform: Platform {
override val name: String = UIDevice.currentDevice.systemName() + " " + UIDevice.currentDevice.systemVersion
}
actual fun getPlatform(): Platform = IOSPlatform()
Duo ex illis obedienter dixerunt, "Bene, frater, pro te efficiemus." ~~"