Help us understand the problem. What is going on with this article?

React Native + Expo アプリをPublish(公開)する:テスト配布する

この記事は、「【連載】初めてのReact Native + Expo開発環境構築入門」の子記事です。環境などの条件は、親記事をご覧ください。


 Expoで作ったアプリは、とても簡単にPublishしたりDeployできます。
 この記事では、前回までで作成途中のHello Worldアプリ(請求書アプリモックアップ)をPublishします。

PublishとDeployの違い

 Expoには、PublishとDeployがあります。PublishもDeployも、自分以外の人がアプリを実行できるようにする、という意味では同じです。大きな違いは、Publish版の実行はExpo clientが必要なのに対し、Deploy版は完全に独立したネイティブアプリであることです。

Publish:開発者以外の人が、Expo clientでアプリを使えるようにする。
Deploy:開発者以外の人が、Expo clientなしでアプリを使えるようにする。

Publish Deploy
実行にExpo Client 必要 不要
オフライン動作 NG OK
テスト用配布 簡単:URLかQRコード 面倒:.apk/.ipaファイル
一般公開 NG OK

 実用時点では必ずネイティブアプリ化しますが、Google PlayやApp Storeに一般公開する必要があるかどうかは、アプリの用途によります。社内でのみ使うアプリなら、ITチームが手元でインストールして配布する運用もありでしょう。
 テスト段階では殆どの場合PublishしてExpo Client上でアプリを使うのがよいでしょう。ただ、オフライン(インターネット接続がない状態)ではExpo Clientが動作しないので、電波のないところでの利用も想定したアプリならDeployしてテストする必要があります。

Publishの準備 - Expoアカウントを作成

 ExpoアプリをPublishするには、Expoアカウントが必要です。連載の最初の記事「Expoのアカウントを作ってReact Nativeの開発環境を整える」を参考に、アカウントを準備している状態を作ります。

Publishを実施

 Publishは、UIから実施します。CLIからでも実施できます。詳しくは公式ドキュメントをどうぞ。

 Visual Studio Codeでプロジェクトを開き、PowerShellからアプリを実行します。

expo start

 Expo Dev Toolsが表示されたら、左ペインのPublish or republish project...をクリック。NAMEURL SLUGを入力(プロジェクト作成時に入力した情報がすでに入ってるのでそのままでもOK)して、Publish projectをクリック。

image.png

 ここからはVisual Studio CodeのPowerShell側で操作します。ユーザーアカウントが必要だと言われるので、Log in with an existing Expo account(すでに持ってるアカウントを使う)を選択。

image.png

 その後ユーザー名とパスワードを入力してログインが成功すると、アプリのビルドがスタートします。ビルドには、いつも以上に時間がかかります。
 うまくいくと、以下のようにSuccessメッセージが出ます。

image.png

 また、ExpoのWebにログインすると、PublishしたプロジェクトがProjectsタブに表示されます。

image.png

 SuccessメッセージにあるURLを開くと、(ログインしていなくても)アプリを実行するためのQRコードが表示されます。これはログインしたときに表示されるプロジェクトのリンク先と同じです。

image.png

 これで、このプロジェクトのURLを知ってる人は誰でも手元のAndroidかiPhoneのExpo Clientでアプリを実行できるようになりました!

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away