EXPO_PUBLIC_ の値が、開発では読めて本番だけ undefined になる書き方を、変換結果で見分けます
API の URL が開発中は読めるのに、ビルドした途端に undefined になる。原因は process.env の書き方でした。babel-preset-expo の変換結果を開発・本番で並べ、置き換わる書き方と残ってしまう書き方を表にしました。
App Review で「Guideline 2.1・白い画面」と言われたとき、Expo のリリースビルドで疑う3か所
TestFlight では開くのに、審査では「起動後に白い画面のまま」と差し戻される。Expo + EAS のリリースビルドで、環境変数の environment、secret の可視性、審査員の環境差の3点を順に切り分ける手順を、確認コマンドと診断コードつきでまとめました。
リリース前に、書き出した Expo バンドルの中から自分の鍵を探してみる
ソースに鍵がなくても、出来上がったアプリの中に鍵が残ることがあります。Expo SDK 57 で実際に expo export を実行し、バンドルの中身を grep と 60 行ほどの Node スクリプトで調べて、見つかる鍵と見つからない鍵の違いを確かめました。
そのAPIキー、アプリの中に入っていませんか — Rork の環境変数と Supabase Edge Function の使い分け
Rork で外部 API をつなぐとき、キーの置き場所には環境変数と Supabase Edge Function の二つがあります。どちらに寄せるかを「あとから取り消せるか」「誰に請求が来るか」で決める基準と、置いたあとに自分の目で確かめる手順をまとめます。
eas env:list に --json がないと分かってから、環境変数の棚卸しを組み直しました
eas env:list に --json フラグは用意されていません。--format short の出力を安全に JSON へ変換し、三つの環境の抜けを一行で見つけるまでの手順を書き残します。
EAS の secret は「アプリに入れない」設定ではありません — 接頭辞と可視性を別々に決める
EXPO_PUBLIC_ の接頭辞は成果物に入るかを決め、EAS の可視性は誰が読めるかを決めます。二つを重ねたときに OTA 更新でだけ値が消える筋道と、出荷前に自分の手で確かめる手順をまとめました。
クライアントに置いた鍵は公開情報 — Rork 生成アプリの秘密境界とローテーション手順
生成された Expo アプリの .ipa を展開すると、環境変数がそのまま文字列として現れます。鍵を3層に分類し、置けないものをプロキシへ逃がし、漏れた前提のローテーション手順書を用意するまでの設計をまとめます。
Rork の EAS Build プロファイルを切り替えたら動かなくなった — development・preview・production の落とし穴と対処法
Rork Max の EAS Build プロファイル切り替えで起きる代表的なトラブルを解説します。environment variables の設定ミス、TestFlight への誤アップロード、production で開発用 API を叩く問題など、症状別に対処法を紹介します。
EXPO_PUBLIC_RORK_AUTH_URL を空欄のまま本番に出さないために — Rork 生成アプリの認証URL設定
Rorkで生成したアプリのコードに現れる EXPO_PUBLIC_RORK_AUTH_URL に何を入れるべきか、開発・EAS Build・本番でどう切り替えるかを実例付きで整理しました。空欄のまま審査に出す事故を防ぎます。
TestFlight は問題ないのに App Store 公開後にクラッシュする4つの理由
TestFlightでは動いたRorkアプリがApp Store公開後にクラッシュする原因を4パターンに整理します。本番ビルドで環境変数がundefinedになる、ATSの厳格適用、プライバシーマニフェストの申告漏れ、メモリ不足への対処と、Sentry導入による把握までを解説します。