kotlin-multiplatform で UUID を生成しますか? 質問する

kotlin-multiplatform で UUID を生成しますか? 質問する

UUID/GUID を取得するための kotlin-multiplatform 共通関数はありますか?

 // ideally something like this
 val newUUID = UUID() // "1598044e-5259-11e9-8647-d663bd873d93"
 println("newUUID = $newUUID")

expect-actual を使用して Android 版と iOS 版を別々に作成するのは好ましくありません。

ベストアンサー1

によるとKotlin マルチプラットフォーム ドキュメントexpect/actualAndroid (Java) および iOS (NSUUID) 固有の実装を使用する関数を作成できます。

// Common
expect fun randomUUID(): String
// Android
import java.util.UUID

actual fun randomUUID() = UUID.randomUUID().toString()
// iOS
import platform.Foundation.NSUUID

actual fun randomUUID(): String = NSUUID().UUIDString()

おすすめ記事