18
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Skip】SwiftでAndroidアプリも開発できちゃうゾ!

Last updated at Posted at 2024-08-24

はじめに

先日Skipのバージョン1.0がリリースされました。
SkipとはSwiftでAndroidアプリも作れちゃうよというやつですね。早速ちょっとだけ触ってみたので、サンプルアプリをビルドするまでを記事にしてみます。
SwiftでiOS、Android両方開発できるのはSwift出身の僕にとっては最高ですね。

公式

実際に動かしてみよう

1.Skipで開発する環境を整える

Skipのインストール

以下のコマンドでSkipをインストールしましょう

brew install skiptools/skip/skip

次に以下のコマンドでSkipが動くかどうかをチェックします

skip checkup

僕は以下のようにJava versionのところでエラーがでましたが、特に問題なくSkipを使って両OSのビルドができました。今後どこかで困るのかもしれません。

スクリーンショット 2024-08-24 14.44.07.png

Java vesionも21.0.0未満だし、なぜエラーが出てるのかはよくわかっていません。
JAVA_HOMEにAndroid StudioのJavaを設定しているのがいけないのかな...

2.プロジェクトの作成

以下のコマンドでプロジェクトを作成します。
bundle.idproject-nameAppNameの部分はそれぞれ自分の好きなものに変更してください。ただし、project-nameAppNameは別の名前を使用しなくてはいけないようです。

skip init --open-xcode --appid=bundle.id project-name AppName

例)こんな感じ

skip init --open-xcode --appid=com.test.Sample sample-project SampleApp

プロジェクトの作成が完了すると自動でXcodeも立ち上がります。
ちなみにディレクトリはこんな感じに生成され、XcodeプロジェクトはDarwinの中にいます。

スクリーンショット 2024-08-24 16.34.34.png

スクリーンショット 2024-08-24 16.32.45.png

Bundle ID知らない人向け

Bundle IDとはアプリを一意に識別するもので、アプリリリースするときに使ったりする。くらいの認識でいいと思います。
だいたい、メールアドレスとかを逆にしたものにアプリの名前を繋げた形にしていることが多いと思います。例えばメールアドレスがhogehoge@sample.comだったら、Bundle IDはcom.hogehoge.AppNameみたいな感じ。

3.Androidのエミュレーターを立ち上げる

AndroidStudioを開いて、Virtual Device Managerを選択します
スクリーンショット 2024-08-24 16.26.07.png

デバイスを選んで「▶️」を押して立ち上げます。
初めて開く人はデバイスがないかもしれないので、その場合は追加を行なってください。
スクリーンショット 2024-08-24 16.26.33.png

4.Xcodeでビルドする

あとはXcodeでもシミュレーターを選択してビルドしましょう。
ビルドが通ればAndroidとiOSの両方のアプリが立ち上がるはずです。

スクリーンショット 2024-08-24 16.40.43.png

ドキュメント

料金

Skipはインストール後、14日の試用期間があり無料で使えます。

その後は、商用のアプリやclosed-source(社内用とか?Githubのプライベートリポジトリとかで管理するもの?)で使用する場合にはLicense Keysが必要になります。

License Keyもまずは30日間無料で使えるものが発行できます。それが終了すると、3つのプランから選んで加入して使用することができるようです。

個人で開発しているアプリかつ30K USD/year未満であれば無料プランが使えます。
僕は悲しいかな無料プランを使えてしまいます。(モット、ウレル、アプリ、ツクリタイ。)

ちなみにLicense Keysは以下のファイルに書き込むようです。

~/.skiptools/skipkey.env 

License Keysについて

料金プランについて

おわりに

今回は両OSのUIもSwiftで作成されていますが、UIは別々で書くとか、既存のプロジェクトに組み込むとかその辺りもサポートされてるみたいです。まだ始めてみただけなのでSkipで開発してアプリリリースまでやってみるかなぁと思ってます。ではでは。

18
13
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
18
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?