Expoアプリの使用を開始する

ReactNativeプロジェクトを生成できます React NativeCLIまたはExpoCLIを使用博覧会 は、XcodeまたはAndroid Studioでネイティブコードを使用せずに、ReactNativeアプリをすばやく起動して実行できるようにするツールチェーンです。

このガイドでは、で構築されたReact Nativeプロジェクトをセットアップ、テスト、コード署名、およびデプロイする方法について説明します。 Expo CLI

ExpoアプリをBitriseに追加する

まず、React NativeExpoアプリをに追加する方法を見てみましょう。 bitrise.io

Bitriseアカウントをお持ちですか?

サインアップしていることを確認してください bitrise.io Bitriseアカウントにアクセスできます。アカウントを登録する方法は複数あります。

  1. あなたのBitriseに行きます ダッシュボード

  2. クリック + 上部のメニューバーにサインオンしてを選択すると、 新しいアプリを作成する ページ。

  3. アプリを追加するアカウントを選択します。

  4. アプリのプライバシーをいずれかに設定します プライベート また 公衆 をクリックします

  5. リポジトリをホストするGitホスティングサービスを選択してから、プロジェクトをホストする独自のリポジトリを見つけて選択します。

  6. リポジトリアクセスを設定するように求められたら、をクリックします いいえ、SSHキーを自動追加します

  7. プロジェクトの構成を含むブランチの名前を入力します- 主要たとえば、-次にクリックします

  8. Bitriseがプロジェクトを検証している間待ちます。

  9. プロジェクトビルド構成、ReactNativeプロジェクトタイプが自動的に選択されます。スキャナーに障害が発生し、プロジェクトタイプが自動的に選択されない場合は、プロジェクトを手動で構成できます。 Bitriseはまたを検出します モジュール そしてその 変異体 あなたのプロジェクトに基づいています。

  10. 構成を完了します。

    • React NativeプロジェクトからiOSアプリを生成するには、iOS開発チームIDを次の場所に入力します。 iOS開発チームを指定する 分野。

    • ipaエクスポート方法を選択します、.ipaファイルのエクスポート方法を選択します:アドホック、アプリストア、開発、またはエンタープライズ方法。

    • Expoユーザー名を指定します、ユーザー名を入力して

    • Expoパスワードを指定する、パスワードを入力して、

  11. Webhookのセットアップ、Webhookを登録して、コードをリポジトリにプッシュするたびにBitriseが自動的にビルドを開始できるようにします。

これで、ReactNativeプロジェクトが正常にセットアップされました。 bitrise.io!最初のビルドは、プライマリワークフローを使用して自動的に開始されます。最初のビルドで生成されたレポートは、 アプリとアーティファクト ビルドのページのタブ。

の依存関係のインストール リアクトネイティブ アプリ

Bitriseプロジェクトスキャナーが正常にスキャンした場合 リアクトネイティブ 事業、 npmコマンドを実行します また ヤーンコマンドを実行する ステップはデフォルトのワークフローに含まれます。これらの手順により、不足しているJavascriptの依存関係をアプリにインストールできます。

ネイティブAndroidの依存関係については、 不足しているAndroidSDKコンポーネントをインストールする ステップ。

ネイティブiOSの依存関係については、特に、 Homebrewインストール ステップまたは CocoaPodsインストールを実行します ステップ。

Expoアプリ

Expoアプリをお持ちの場合は、ネイティブの依存関係をインストールする前にアプリをイジェクトする必要があります。 Expoアプリをイジェクトする

npmを使用してJavascriptの依存関係をインストールするには:

npmの代わりにYarnを使用する

このガイドでは、npmを使用してJavascriptの依存関係をインストールしています。ただし、 ヤーンコマンドを実行する 手順:追加の構成を必要とせずに、不足しているJS依存関係をインストールできます。

  1. でアプリを開きます ビットライズ

  2. に移動します ワークフロー タブ。

  3. からワークフローを選択します ワークフロー ドロップダウンメニュー。

    Installing any additional tools
  4. ワークフローに npmコマンドを実行します ステップ。

  5. の中に 実行する引数を指定したnpmコマンド 入力フィールド、タイプ インストール

    Getting started with React Native apps

Expoアプリをイジェクトする

Expoで構築されたReactNativeアプリには、ネイティブモジュールは付属していません。ビルド手順はプラットフォーム固有であるため、Bitriseはアプリを取り出し、必要なネイティブテンプレートを追加して構成する必要があります。次に、ネイティブ依存関係インストーラーの手順で、不足しているネイティブ依存関係のインストールを処理して、プロジェクトをビルドして出荷できるようにします。

新しいExpoアプリを追加すると、Bitriseプロジェクトスキャナーは自動的に エキスポイジェクト 直後のステップ npmコマンドを実行します また ヤーンコマンドを実行する デプロイワークフローのステップ。

使用したくない場合 エキスポイジェクト ステップ、プロジェクトをローカルにイジェクトし、ネイティブiOS / Androidプロジェクトをコミットすることができます エキスポイジェクト ワークフローにステップインします。

Getting started with Expo apps

あなたが使用する場合 エキスポイジェクト ステップ、あなたが記入しなければならないフィールドを見てみましょう:

  • 作業ディレクトリ入力フィールド: プロジェクトディレクトリのパスを指定します。

  • Expo CLIバージョン: プロジェクトに使用したExpoCLIバージョンを提供します。

  • Expoのユーザー名Expoアカウントのパスワード 入力 Expoアカウントのパスワードとユーザー名を追加すると、ステップは expo login 実行する前のコマンド expo eject。イジェクトする前にまずExpoアカウントにログインすることで、問題を防ぐことができます。

  • イジェクト後にexpopublishを実行しますか? 入力:実行したい場合 expo publish、この入力をに設定する必要があります yes。実行することに注意してください expo publish、最初にExpoアカウントにログインする必要があります。これは、 Expoのユーザー名 そしてその Expoアカウントのパスワード 入力も同様です。

NS エキスポイジェクト ステップの後には、ビルド、署名、テストなど、プラットフォーム固有のステップを続けることができます。たとえば、 iOS用のXcodeアーカイブとエクスポート iOS向けのステップ。

ReactNativeアプリのテスト

ReactNativeの組み込みテストメソッドを使用できます。 冗談 ユニットテストを実行します。

  1. でアプリを開きます ビットライズ

  2. に移動します ワークフロー タブ。

  3. からワークフローを選択します ワークフロー ドロップダウンメニュー。

    Installing any additional tools
  4. 追加します npmコマンドを実行します ワークフローに進みます。

  5. の中に 実行する引数を指定したnpmコマンド 入力フィールド、タイプ テスト

    Getting started with React Native apps

Expoアプリに署名するコード

すべてのAndroidおよびiOSアプリは、オンラインストアに公開する前に、デジタル署名する必要があります。 Expoで構築されたアプリの場合、プロセスはバニラReactNativeアプリの場合とは多少異なります。

Xcodeプロジェクト用に署名されたIPAを作成する

注記

Overview on iOS code signing in Bitrise

For a comprehensive overview on what Steps are available for code signing asset management, visit the iOS code signing page.

Bitriseを使用すると、Xcodeプロジェクト用の署名付きIPAファイルを簡単に作成できます。あなたがする必要があるのはあなたのコード署名ファイルが正しく管理されていることを確認し、そして私たちの関連する入力を設定することです iOS用のXcodeアーカイブとエクスポート ステップ。

ディストリビューションと開発署名証明書をアップロードします

プロジェクトの開発署名証明書と配布署名証明書の両方をアップロードすることを強くお勧めします。さまざまな種類の証明書がないと、さまざまな種類の署名付きIPAファイルを生成できません。

すべての設定が完了したら、ワークフローでのIPAエクスポートの設定に進みます。

  1. 必要なことを確認してください コード署名ファイルが収集され、アップロードされました

  2. あなたが持っていることを確認してください iOS用のXcodeアーカイブとエクスポート ワークフローにステップインします。

  3. をセットする 配布方法 ステップの入力。

    creatingasignedipa.png

    自動プロビジョニングを使用する場合は、の値と一致していることを確認してください 配布タイプ 関連する入力 iOS自動プロビジョニング ステップ。オプションは次のとおりです。

    • auto-detect -このオプションは非推奨であり、削除されることに注意してください。使用はお勧めしません。

    • app-store:アプリをApp Storeにデプロイする場合は、これを選択します。配布証明書とAppStoreプロビジョニングプロファイルが必要です。

    • ad-hoc:アプリをアドホックテスターにデプロイする場合は、これを選択します。配布証明書とアドホックプロビジョニングプロファイルが必要です。

    • enterprise:Apple Enterpriseアカウントをお持ちで、それを使用してアプリを配布する場合は、これを選択してください。

    • development:内部テストにはこれを選択してください。開発者証明書と開発プロビジョニングプロファイルが必要です。

  4. Set the Automatic code signing input to the Apple service connection you want to use for code signing. The available options are:

  5. Save the Workflow, and start a new build.

それで全部です。 Xcodeは、プロジェクトのバンドルIDとチームIDの設定、および設定したエクスポート方法に基づいて、適切な署名ファイルを自動的に選択します。

Signing an IPA file with a different team’s code signing file

別のチームのコード署名ファイルを使用してIPAファイルに署名する場合(たとえば、社内ビルドに会社のコード署名を使用しているが、App Store配布にクライアントのコード署名ファイルを使用している場合)、設定するだけです。 NS このエクスポートに使用する開発者ポータルチーム オプションも(に加えて 配布方法)。

  • If you use your company’s code signing files for internal builds, but your client’s code signing files are used for App Store distribution.

  • If you use Apple ID for automatic code signing and the Apple ID belongs to multiple teams, use The Developer Portal team to use for this export input to specify which team should be used for automatic code signing asset management.

To do so:

  1. Make sure the right code signing files of the new development team are uploaded to Bitrise.

  2. Set the The Developer Portal team to use for this export option as well (in addition to the Distribution method).

  3. Set the Distribution method.

Androidサインステップを使用したAndroidコード署名

を使用して署名付きAPKを作成できますAndroidサインBitriseワークフローにステップインします。このステップは、ワークフローエディターの[コード署名]タブにキーストアファイルを既にアップロードしている場合に実行するように構成されています。

プロジェクトのbundle.gradleファイルで署名が構成されている場合、Android署名ステップは必要ありません。その場合、Androidビルドステップ(またはGradle Runnerステップ)を実行すると、出力(APKまたはAAB)に自動的に署名されます。それでも、Android Sign Stepを使用して、簡単で安全な方法でプロジェクトに署名することをお勧めします。

jarsignとapksigner

APKはどちらかで署名できます jarsigner また apksigner。 APKの場合、apksignerを使用してプロジェクトに署名する場合は、Androidの署名ステップで最初に有効化を設定する必要があります apksigner trueに入力し、APK署名スキーム入力を自動のままにします。こちらです apksigner APKの最小およびターゲットSDKバージョンをチェックし、必要なスキームを選択します。サポートされている最小バージョンが低い場合はV1スキームでプロジェクトに署名し、新しいシステムでは他のスキームでも署名します。

AABファイルはjarsignerでのみ署名できることに注意してください。ステップは使用します jarsigner で終わるファイルを検出した場合.aab

  1. でアプリを開きます ビットライズ

  2. に移動します ワークフロー タブ。

  3. に移動 コード署名 >> Androidコード署名

  4. キーストアファイルをにドラッグアンドドロップしますファイルをアップロードするのフィールドAndroidキーストアファイルセクション。

    キーストアファイルをアップロードすると、キーストアURLが自動的に生成されます。 Bitriseは、環境変数(BITRISEIO_ANDROID_KEYSTORE_URL)をファイルのダウンロードURL(時間制限のある読み取り専用のダウンロードURL)に値として割り当てます。 Android Sign Stepが自動的にダウンロードするため、手動でダウンロードする必要はありません。

  5. 表示された3つの入力フィールドに資格情報を入力します。

    • キーストアのパスワード

    • キーストアエイリアス

    • 秘密鍵のパスワード

  6. クリック メタデータを保存する

    キーストアファイルをANDROIDKEYSTORE FILEセクションに正常にアップロードすると、Bitriseは入力に基づいて次の環境変数を自動的にエクスポートします。

    • $BITRISEIO_ANDROID_KEYSTORE_ALIAS

    • $BITRISEIO_ANDROID_KEYSTORE_PASSWORD

    • $BITRISEIO_ANDROID_KEYSTORE_PRIVATE_KEY_PASSWORD

    • $BITRISEIO_ANDROID_KEYSTORE_URL

  7. 追加します Androidサイン APKまたはAABファイルをビルドするステップの後にワークフローにステップします。

    Bitriseは上記の環境変数を使用し、それらをのそれぞれのフィールドへの入力として設定します。Androidサインステップ。ステップが実行されると、署名されたAPKまたはAABのいずれかが生成されます。署名されたAPKまたはAABは、デプロイ手順で使用されます。たとえば、GooglePlayデプロイステップまたはBitrise.ioにデプロイしますステップ。後者はAPK / AABをにデプロイします アプリとアーティファクトタブ。使用することもできます APK / AABファイルを作成したら、アプリをデプロイします。

キーストアファイルのダウンロード

ファイルダウンローダーの手順を使用して、ANDROID KEYSTOREFILEセクションからプロジェクトディレクトリにキーストアファイルをダウンロードできます。

- file-downloader:
   inputs:
   - source: $BITRISEIO_ANDROID_KEYSTORE_URL
   - destination: "$HOME/keystores/my_keystore.jks" #native android#

このステップの後、my_keystore.jksで利用可能になります$HOME/keystores/my_keystore.jks

Expoアプリのデプロイ

ReactNativeアプリを次の場所にデプロイできます。

  • bitrise.io:これにより、生成されたバイナリをダウンロードし、パブリックインストールページを介して他のユーザーと共有できます。

  • オンラインストア:複数の異なるオンラインストアを統合しています。これらのガイドでは、GooglePlayとAppleのAppStoreに公開する方法を紹介します。

クロスプラットフォームアプリをbitrise.ioにデプロイする

NS bitrise.ioにデプロイします ステップは、ビルドに関連するすべてのアーティファクトをにアップロードします アプリとアーティファクト ビルドのページのタブ。

パブリックインストールページを使用して、生成されたアプリファイル(Androidの場合はAAB、iOSの場合はIPAファイル)をチームメンバーと共有できます。パブリックインストールページは、生成されたアプリバイナリをデバイスにインストールできる他のユーザーと共有できるURLです。 AAB / APKまたはIPAファイルが作成されたことをユーザーグループまたは個々のユーザーに通知することもできます。

expo.ioへの公開

NS Bitrise.ioにデプロイします ステップはExpoコマンドを使用せず、に公開しません expo.io。このステップでは、アーティファクトをBitriseに公開しますが、特定のプラットフォームに固有のものではありません。

に公開する必要がある場合 expo.io、 をセットする イジェクト後にexpopublishを実行しますか? の入力 イジェクトエキスポ にステップ yes。その場合、公開するExpoアカウントのユーザー名とパスワードを入力する必要があることに注意してください expo.io。

  1. でアプリを開きます ビットライズ

  2. に移動します ワークフロー タブ。

  3. からワークフローを選択します ワークフロー ドロップダウンメニュー。

    Installing any additional tools
  4. あなたが持っていることを確認してください bitrise.ioにデプロイします ワークフローにステップインします。

  5. の中に 通知:ユーザーの役割、この役割が付与されている人だけに通知されるように、役割を追加します。または、 通知:メール 通知するユーザーの電子メールアドレスを含むフィールド。

    これらのメールアドレスを次のように設定してください 秘密!これらの詳細は、以下で変更することもできます。 通知 クリックすると で生成されたバイナリの横にあるアイコン アプリとアーティファクト タブ。

  6. ステップでパブリックインストールページを生成する場合は、 アプリの公開ページを有効にしますか? への入力 NS

アプリをiTunesConnectにデプロイする

アプリをiTunesConnectにプッシュするたびに、固有のビルドとバージョン番号が必要であることに注意してください。 いずれかまたは両方をインクリメント 展開する前に。

  1. あなたが働いていることを確認してください AppleDeveloperアカウントへの接続

  2. 自分のマシンで少なくとも1回はIPAファイルを生成します。

  3. 必要なすべてのコード署名ファイルをアップロードする Bitriseに。

    アプリをiTunesConnectにデプロイするには、配布タイプの証明書とAppStoreタイプのプロビジョニングプロファイルが必要です。

  4. 確認してください iOS用のXcodeアーカイブとエクスポート ステップはワークフローにあります。

  5. Set the Automatic code signing input to the Apple service connection you want to use for code signing. The available options are:

  6. をセットする エクスポート方法を選択してください ステップの入力 app-store

    このステップでは、エクスポートされた.ipaファイルのパスが$ BITRISE_IPA_PATH環境変数に保存されます。

  7. 追加します Deploy to iTunes Connect ワークフローに進みます。

  8. 必要な入力を入力します。

    • アプリのAppleIDまたはバンドルIDのいずれかが必須の入力です。 2つのうちの1つを提供する必要があります。

    • あなたが設定した場合 レビューのために送信true、ステップは、送信がiTunes Connectで処理されるのを待ってから、指定されたバージョンのアプリをレビューのために送信します。

    • のデフォルト値 アプリバージョンの更新をスキップ 入力は No。別の方法でアプリのバージョン番号をインクリメントした場合にのみ変更してください。

    • 複数のチームにリンクされているiTunesConnectアカウントを使用する場合は、チームIDまたはチーム名のいずれかを入力してください。

  9. ビルドを開始します。

すべてがうまくいけば、アプリはiTunes Connectに送信され、TestflightまたはAppStoreから配布できます。

AndroidプロジェクトをGooglePlayにデプロイする

あなたは使用することができます GooglePlayにデプロイする ワークフローにステップインして、デジタル署名されたAAB / APKをGooglePlayストアにアップロードします。

  1. コード署名を構成する あなたのアプリのために。

  2. GooglePlayアクセスを構成します。

    これを行う必要があるのは、アプリの最初のGooglePlayデプロイの場合のみです。

  3. あなたが持っていることを確認してください GooglePlayにデプロイする 後のステップ Androidサイン ワークフローにステップインします。

  4. 次のように、必須の入力フィールドに入力します。

    • サービスアカウントのJSONキーファイルパス:このフィールドはリモートURLを受け入れることができるため、アップロードされたサービスアカウントのJSONキーを含むEnvVarを指定する必要があります。例えば: $BITRISEIO_SERVICE_ACCOUNT_JSON_KEY_URL

    • パッケージ名:Androidアプリのパッケージ名。

    • 追跡:APKをデプロイするトラック(たとえば、alpha / beta / rollout / productionまたは設定したカスタムトラック)。