LoginSignup
6
2

Skip使ってみた

Last updated at Posted at 2024-03-08

Skipとは?

  • Swift/SwiftUIを用いてAndroid開発も行えるプロジェクト
    • 内部で,Swift/SwiftUIコードをKotlin/Composeコードへのトランスパイルが行われている
    • 正確にはクロスプラットフォームではなくSwift/SwiftUIでAndroid開発ができる
    • Xcodeへ導入することで使えるようになる(AndroidのためにAndroid Studioは必要)

スクリーンショット 2024-03-08 15.10.41.png

(引用:https://skip.tools/docs/)

ここがすごい

  • Swift Package Manager (SwiftPM) から Android Gradleへのプロジェクトコンバーターも同梱.パッケージ依存関係を自動的に保ってくれる
  • https://github.com/skiptools/ でiOSのSwift,Foundation,Observation,SwiftUI,およびその他のフレームワークの一部をAndroid固有のものへ再実装
  • XCTest → JUnitに変換して自動単体テストもサポート

いざ導入

Homebrewで簡単導入!!

brew install skiptools/skip/skip
そして諸々のdependenciesをチェック&解決
skip checkup
アプリケーション作成コマンド
skip init --appid=tools.skip.HelloSkip hello-skip HelloSkip

それぞれのコマンドは
skip init --appid=(AppID) (ProjectName) (Appname)
という意味だそう

引っ掛かりポイント

  • Gradleの設定に戸惑った
    • Gradle8.6を標準サポートしている様子(執筆時点).コマンドラインでgradleを実行して原因調査
      • 結果Android SDKの場所が適切にわかっていなかったため,無理やり環境変数で設定して実行成功

感想

力技のトランスコンパイルに感動しました.面白いプロジェクトだと思います.フレームワークのAndroidへの再実装はgithubで進められており,Contributer募集中だそう!これはやるっきゃない!

参考

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2