👏

KMMで詰まった点

2022/07/02に公開

気づいたら書いてく

Swift編

gradlew: Permission not granted

普通にパーミッション無いだけだった。sharedの上位ディレクトリにある gradlew を以下のコマンドでパーミッションを与える

> chmod x+ gradlew

companion object

例えばこういうクラス

class Hoge {
    companion object {
        fun hoge() : String { return "hoge" }
    }
}

Kotlin からは以下で呼び出せる

Hoge.hoge()

しかしswiftではできない。Companionオブジェクトをインスタンス化したあとにアクセスする必要がある。

Hoge.Companion().hoge()

Int? -> KotlinInt?

https://twitter.com/jiro_aqua/status/1401402504198324225?s=20&t=0Teu0WWJ-bGpM9tFwVzDIg

KotlinInt? はクラスなので、直渡しできないっぽい。以下で対応する。

let x = 10
let y = KotlinInt(value: y)

普通にOptionalなIntじゃだめなんだろうか...

Discussion