2026.09.02 11:20 ~ 12:00 Meerkat

Swift が Android で動く仕組み ー Swift SDK for Android と KMP

クロスプラットフォーム 日本語

Swift 6.3 で Swift SDK for Android が正式リリースされ、 Swift で書いたコードが Android アプリの中で動くようになっています。モデルやビジネスロジックは共通化し、UI はネイティブで書くという発想自体は、Android デベロッパーには Kotlin Multiplatform (KMP) でお馴染みかと思います。では、Swift SDK for Android は KMP と何が違うのでしょうか。 このトークでは、iOS エンジニアの視点から Swift SDK for Android がどのようなものかを解説します。SwiftUI や iOS 依存 API は当然動かず、Foundation の一部にも制約があります。何ができて何ができないのか、 iOS / Android 双方のチームにとってどのような利点があるのかを整理します。 その上で、Swift SDK for Android の内部で何が起こっているのかを見ていきます。Swift コードは `.so` にコンパイルされ、JNI を介して Kotlin と通信します。ここで、Swift のメモリ管理を担う ARC と、Android のランタイムの GC という、異なる仕組みが同一プロセス内で共存することになります。両者の境界で何が起きているのか、ランタイムレベルの話題に触れていきます。 最後に、KMP との比較を通して Swift SDK for Android の位置づけを整理します。クロスプラットフォームの新しい選択肢が増えた、で終わらせず、KMP との設計上の違いや、ARC と GC の境界で起きることまで含めて、技術選定の場で具体的な判断ができる状態を目指します。

対象者

前提知識 Android / iOS のいずれかでアプリ開発をしたことがあれば、トーク全体を追えるかと思います。Swift や iOS 開発の経験は前提としません。Kotlin Multiplatform (KMP) の知識もあると比較がわかりやすいですが、必須ではありません。トーク全体を通して、メモリ管理などの低レイヤーな話題にも踏み込みます。用語の解説は適宜入れますので、馴染みがない方も問題なく聞いていただけます。 対象者 - Swift SDK for Android が気になっているが、何ができるものなのかがよくわかっていない方 - iOS / Android のクロスプラットフォーム技術の選定に悩んでいる方、または KMP との比較に興味がある方 - 異なる言語が同じアプリの中で動くときの低レイヤーな仕組みに興味がある方

同じ時間帯のセッション

すべてのセッションを見る