はじめに
この記事は Google Developer Student Clubs Japan Advent Calendar 2022 2日目の記事です。
はじめまして!GDSC HitotsubashiのLeadをやっております、oreoです。
一橋大学法学部に在籍中で、エンジニアインターンではReactを使ったwebアプリ開発に参加しています。
個人では、GDSC Hitotsubashiに所属しているメンバーとReactNativeでモバイルアプリの開発もしており、先日Androidアプリをリリースしました。リリースする際にExpoが便利だと感じたので記事にしました。
ReactNativeとは
Expoの説明に入る前にReactNativeの説明をします。
ReactNativeはモバイルアプリケーションフレームワークです。iOSとAndroidの両方で動作するクロスプラットフォーム開発が可能です。同じクロスプラットフォームアプリ開発のフレームワークとしては、Googleが開発したFlutterなどがあります。
Expoとは
ExpoはReactNative用の開発ツールです。ネイティブ機能の組み込みに一部制約があるようですが、開発環境の整備や実機での動作確認が簡単であるというメリットがあります。実機テストはExpo Goというアプリを実機にインストールして開き、expoのアカウントでログインするだけでテストしたいアプリを動かすことができます。今回はExpoの環境構築は割愛させていただきます。
Androidアプリをリリースする際に便利だと感じたこと
Androidアプリをリリースするためには通常Google Play Consoleというツールを使用します。アプリのテスト版や製品版を公開するためにはここにaabファイル(Android App Bundle)をアップロードする必要があります。
aabを作成するためにまずビルドする必要がありますが、これはExpo CLIを使ってコマンドライン上でeas build
と打てばビルドできます。そしてExpoのアプリのページでビルドの状況を確認したり、aabファイルをダウンロードしたりすることができます。
このように簡単にaabファイルをアップロードすることができ、あまり躓かなかったのですが、最終テスト版をアップロードする際に少し躓きました。
APIレベルが31に達していなかったためaabファイルをアップロードすることができませんでした。AndroidアプリのAPIレベルを変更するためには通常build.gradleとAndroidManifest.xmlにAPIレベルを記述する必要があるそうですが、expoのアプリにはbuild.gradleがなかったため困りました。しかし、色々調べて試してみたところ、Expo SDKをアップデートするだけでAPIレベルが31に達しました。Expo SDKを最新に保っていればこちらで特に記述しなくてもAPIレベルの制限に引っかからないのは便利だと思いました。
ということで無事にリリースできました。
さいごに
今回はReactNativeとExpoとAndroidアプリのリリースの手順を簡単に紹介しました。
GDSC Hitotsubashiはまだまだメンバーを募集中です。私たちと一緒にアプリを開発してみませんか?
最後までお読みいただきありがとうございました。