Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Swift SDK for Android を試してみる
Search
yaslab
November 28, 2025
Programming
79
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift SDK for Android を試してみる
yaslab
November 28, 2025
More Decks by yaslab
See All by yaslab
Swift 4 の変更点
yaslab
2
1.9k
Other Decks in Programming
See All in Programming
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.1k
Modding RubyKaigi for Myself
yui_knk
0
900
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.2k
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
190
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
1.7k
Inside Stream API
skrb
1
650
Oxcを導入して開発体験が向上した話
yug1224
4
290
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
200
net-httpのHTTP/2対応について
naruse
0
450
JavaDoc 再入門
nagise
0
290
CSC307 Lecture 17
javiergs
PRO
0
320
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Embracing the Ebb and Flow
colly
88
5.1k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
530
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Designing for Timeless Needs
cassininazir
1
250
GraphQLとの向き合い方2022年版
quramy
50
15k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
150
For a Future-Friendly Web
brad_frost
183
10k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Balancing Empowerment & Direction
lara
6
1.1k
Transcript
Swift SDK for Android を試してみる 2025/11/28 Mobile Act OSAKA #17
八田泰弘 @yaslab フェンリル株式会社 iOS エンジニア iOS テックリード 自己紹介
2025年 6月 Android Workgroup 設立 ー Swift 公式のワーキンググループが発⾜ ー Android
サポートが継続的に維持される 2025年 10月 Swift SDK for Android 公開 ー 公式ブログにてプレビュー版リリースがアナウンスされた ー Swift を⽤いた Android 開発の公式サポート Swift の Android 開発サポート状況
Swift SDK ‧クロスコンパイルのための仕組み: OSやCPUが異なるマシン向けのネイティブコードを⽣成する。 ‧SDKの内容: ターゲット向けの「ツールチェイン」+「ライブラリ、ヘッダー等」をひとまと めにしたものを Swift SDK と呼ぶ。
‧メリット: ⾯倒な環境構築不要。SDK を⼊れるだけで、macOS 上で Android 向けのビルド が可能。 ‧リリース時期 `SE-0387 Swift SDKs for Cross-Compilation` で提案され、Swift 6.1 で実装され た。
課題:言語の壁 Swift はネイティブコード、Java/Kotlin は JVM 上で動作 (Android の場合は JVM でなく
ART で動作) 解決策:JNI Java から C/C++ ネイティブコードと連携するためのインターフェース • JNI を経由して Java から Swift を呼び出す • Swift の関数は C の関数として書き出す JNI (Java Native Interface) • ART も JNI をサポートしている
swiftlang/swift-java Swift と Java を相互運⽤利⽤するためのツール このツールが JNI のためのコードを⾃動⽣成してくれるため、Swift と Java
の連携を意識せずに実装できる。 swift-java
ロジック部分の共通化 ビジネスロジック、通信処理などを Swift で実装し、 iOS と Android で共有 UI はネイティブ実装
UI 部分は各プラットフォームの技術(SwiftUI, Jetpack Compose)を使⽤ 実践導入する場合の方針 SwiftUI を使⽤可能なのが Apple プラットフォームのみ なので、Swift ではそもそも UI 実装の共有ができない Swift の共有コードができるだけ多くなるように設計す るのが良さそう(例:ViewModel 以降を共通化)
いいところ 懸念点 • 開発コスト削減: アプリ仕様をiOS/Androidで2つ実装 しなくて済む • 品質向上: iOS/Android 間の実装差異を最⼩限にでき、
同じ仕様を2つ実装することで発⽣していた認識齟齬な どのバグを回避できる • ⼈材確保が容易: Swift を書くことができるエンジニア はたくさんいる • 幅広い知識: iOS/Android 両⽅のビルドシステムへの理 解が必要 • 専⾨知識: トラブル時に Swift SDK や JNI の知識が必要 になる場合がある • 実績: Swift SDK for Android はまだプレビュー版で、 現状は Flutter や KMP の⽅が実績があり安定している マルチプラットフォーム開発のいいところ、懸念点
まだプレビュー版 Swift SDK for Android は 最新の Swift 6.2 向けには提供されていない。
現在はまだプレビュー版のみ。 Gradle Integration swift-java の導⼊はまだ⼿動。 将来的には Gradle で簡単に導⼊できるようになるはず。 今後に期待!!
公式のサンプルコード Swift SDK for Android を使⽤するサンプル集 swiftlang/swift-android-examples
ご清聴ありがとうございました