SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ExpoとEASで始める快適モバイルアプリ開発

クラウドビルドの実践――EAS BuildとDevelopment Buildを活用した開発フロー

ExpoとEASで始める快適モバイルアプリ開発 第10回

eas envによる環境変数管理

 本番・プレビュー・開発で異なるAPIエンドポイントやAPIキーを使いたい、という場面はほぼすべてのアプリで発生します。eas envはそのための環境変数をEASクラウドで一元管理するコマンド群です。

環境変数の作成と確認

 環境変数を新規作成するにはeas env:createを使います(リスト13)。

[リスト13]環境変数の作成
eas env:create --name API_BASE_URL --value "https://api.example.com" --environment production

 --environmentにはproductionpreviewdevelopment のいずれかを指定します。ここで設定した値は、同じ環境向けのビルドやアップデート配信の際に自動で注入されます。登録済みの変数一覧はeas env:listで確認できます(リスト14)。

[リスト14]環境変数の一覧表示
eas env:list --environment production

.envファイルとの同期

 ローカルの.envファイルとEAS側の環境変数を双方向に同期するには、eas env:pulleas env:pushが使えます(リスト15)。

[リスト15].envファイルとの同期
# EAS側 → ローカルに取得
eas env:pull --environment development --path .env.local

# ローカル → EAS側にアップロード
eas env:push --path .env.production --environment production

 eas env:pullは、チームに新しいメンバーが加わった際に「EAS上の環境変数をローカルの .envとして取得する」使い方が典型的です。.envファイルをGitに含めることなく、チーム全員が同じ環境変数を共有できます。

eas env:exec でローカル実行に環境変数を注入する

 eas env:execを使うと、EAS側の環境変数を注入した状態でローカルのコマンドを実行できます(リスト16)。

[リスト16]EAS環境変数を注入してローカルコマンドを実行
eas env:exec --environment production -- npx expo start

 本番環境変数でアプリの動作確認をしたい場合や、EAS側の設定でローカルのスクリプトを動かしたい場合に活用できます。

 なお、eas envはビルド(EAS Build)だけでなく、OTAアップデート配信(EAS Update)でも --environmentフラグを通じて機能します。EAS Updateについては第12回で扱いますが、環境変数の設定はここで済ませておくと後の章がスムーズに進みます。

まとめ

 本章では、eas buildによるクラウドビルドのハンズオンを中心に、Development Buildを活用した開発フロー(eas build:dev)と環境変数管理(eas env)まで扱いました。

 eas build --platform android --profile previewのワンコマンドでAndroidのAPKがクラウドで生成され、QRコードでインストールできる体験は、ビルドマシンを用意した経験がある方ほど衝撃的に感じるはずです。クレデンシャルの自動生成(前回のeas credentials)からビルド実行までが、数コマンドで完結します。

 日常の開発ではeas build:devがfingerprintによる一致判定を自動で行うため、「ネイティブを触ったか触っていないか」を意識せずにDevelopment Buildを活用できます。そしてeas envによって、本番・プレビュー・開発の環境変数をEASクラウドで一元管理し、チームで安全に共有できます。

 かつて「ビルド体制を整える」ことは、中~大規模チームでないと割に合わない大仕事でした。しかし EAS の登場によって、個人開発者でも、小さなチームでも、ほんの数コマンドで本格的なリリース体制を手に入れられるようになりました。本連載ではこれを「ビルドの民主化」と呼びたいと思います。

 次回(第11回)は、ビルドできた成果物をストアに届けるEAS Submitを扱います。eas.jsonの3プロファイル(development/preview/production)の使い分けもここで本格的に掘り下げ、eas build --auto-submitでビルドからストア提出までをワンコマンドで完結させます。

この記事は参考になりましたか?

ExpoとEASで始める快適モバイルアプリ開発連載記事一覧

もっと読む

この記事の著者

WINGSプロジェクト 中川 幸哉(ナカガワ ユキヤ)

WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山田 祥寛(ヤマダ ヨシヒロ)

静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/24652 2026/06/29 09:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング