お仕事でもスマホアプリを開発しており、個人開発でも作ってみようと思いました!4,5年前に学生だった頃からswiftとUnityではアプリを開発していましたが、一般に後悔するほどではなかったためAppleのデベロッパーアカウントは止めていましたが、久しぶりに課金しました!
今回の開発は全てYouTubeで配信しているのでよかったらみてみてください!
Expoを選んだ理由
React Nativeは以前から気になっていてコマンドでデプロイできるらしいExpoを使ってみることにしました。お仕事で実際に使っていたのも理由の一つです。
「ネイティブコードを書かなくても動く!」
というキャッチコピーにも惹かれました。
Expoを使ってみて
Expo Goでの即時デバッグ体験が最高 のはずが…
まず感動したのが Expo Go アプリ。QRコードを読み取るだけで、手元のスマホにすぐアプリが表示されます。コードを変更すると即座に反映されるので、開発効率が抜群です。同じwifiに着いないでいればどの実機でもデバッグできます!
認証機能を入れたくなった時の壁
開発を進めていく中で、「Google認証を入れてみよう」と思い、FirebaseのAuthenticationを使って実装を試みました。
しかし、ここで問題が発生。
Google認証にはネイティブコードが必要
→ Expo Goでは動作しない
Expo Goは非常に便利ですが、ネイティブモジュールを必要とする機能はサポートされていません。つまり、ビルドして実機で検証する必要があるのです。
この段階で、便利だったExpo Goの「即時デバッグ体験」は使えなくなりました。これは少し残念でした。
スマホから歩数を取得するなどのネイティブコードが必要になる部分でExpo Goが使えなくなるのは知っていたのですが、まさかの認証機能の段階でネイティブコードが必要になるとは思っていませんでした。
Expoのビルドとデプロイは超シンプル
とはいえ、Expoの真価はここからです。ビルドやデプロイがすべて CLIコマンドで完結します。
eas build --platform ios
eas submit --platform ios
などのコマンドを打つだけで、iOS用やAndroid用のアプリをビルドできます。ビルドしたアプリは、TestFlightやPlay StoreにアップロードすればOK。とても簡単です。
Expoの無料プランだとeas build --platform ios
を実行後に以下のメッセージが出る。
starting in about 30 minutes...
30分くらいかかることもあるのでビルドは気長に待つ必要がある。
iOSビルドにはApple Developer登録が必要
iOSアプリを実際にビルドするには、Apple Developer Programへの登録が必須です。年額 12,000円(99ドル) ほどかかるので、気軽に始めるには少しハードルがあります。
個人事業主になるとこのくらいの金額は払った方が良いとすぐに判断できるようになりました。
感想
Expoを使ってみて、パソコンのシミュレーターでデバッグする分にはとても使いやすいです。ネイティブコードを変更した時のデバッグは10分くらいかかりますが、それ以外はサクサク開発できます。
本番環境へのデプロイもコマンドでできて(おそらく)簡単なのでReact Nativeでスマホアプリを作る場合はExpoはかなり良いと思います!
AIが優秀で上手く使うと数日でアプリができると思います!
コメント