朝、Expo の変更履歴を読んでいて、ある一文で手が止まりました。Expo Go で開発中のアプリを開くには、ターミナルで動いている Expo CLI と、スマホの Expo Go アプリの、両方にログインしている必要がある——という内容です。
昨日まで QR コードを読むだけで開いていた方にとっては、突然の変化なのだと思います。ログインは済ませたつもりだった、と感じるかもしれません。カメラで読み取ったのに画面が進まない、ログインを求められる、といった症状に心当たりがあれば、この記事の順番で確かめてみてください。
なお私自身は、この症状を手元の iPhone で再現したわけではありません。以下は Expo の公式な変更履歴(2026年9月3日付)に書かれていることと、公式の手順をもとに、迷わない順番に並べ直したものです。確認できていない部分は、その旨を書き添えました。
症状の見分け方
変更履歴によると、対象は 最新の iOS 版 Expo Go です。シミュレータ版は対象外で、Android 版には「将来広げる予定」とされています。開発ビルド(development build)でもログインは要りません。
つまり、次のような状況のときに疑います。
- iPhone の Expo Go で、
npx expo startが表示した QR コードを読み取った場面 - 以前は開けたプロジェクトが、今日は開けない、またはログインを促される場面
- コードを変えていないのに、症状だけが出た場面
変更履歴には、エラー文言そのものは載っていませんでした。ただし、ログインが必要なのが「ターミナル側」「アプリ側」「両方」のどれなのかは、Expo Go が画面で教えてくれる、と説明されています。表示された案内を、まず読んでください。
原因の切り分け順
確認する場所は2つだけです。順番は、ターミナル、アプリ、アカウントの一致、の3段階にします。
| 順番 | 確認する場所 | 見ること |
|---|---|---|
| 1 | ターミナル(パソコン) | Expo CLI にログインしているか |
| 2 | Expo Go(iPhone) | Home 画面右上のアイコンでログイン済みか |
| 3 | 両者のアカウント | 同じ Expo アカウントか |
手順が短文で済む部分は、短く書きます。
ターミナル側は、次のコマンドで確かめられます。
# ログイン中のユーザー名が表示されれば OK
npx expo whoami
# 未ログインなら、表示される案内に従ってブラウザで認証
npx expo loginwhoami がユーザー名を返すなら、ターミナル側は問題ありません。返さない場合は login を実行し、案内されたリンクからブラウザでサインインします。
直し方
公式の手順は、次のとおりです。
- ターミナルで
npx expo loginを実行し、ブラウザでサインインします。 - iPhone の Expo Go を開き、Home 画面右上のアイコンをタップして、Expo のユーザー名とパスワードを入力します。
- 両方が 同じアカウント であることを確かめます。
- QR コードをもう一度読み取るか、Home タブに出ている開発サーバーのアドレスをタップします。
ここで一つ、私が見落としやすいと感じる点があります。個人開発でアプリごとにアカウントを分けていると、片方が仕事用、もう片方が個人用になっていることがあります。ログインしているのに開けないときは、画面の見た目ではなく、ユーザー名の文字列を一つずつ見比べてください。
Rork の QR コードで開くとき
Rork Pro のプレビューは、FAQ によると「QR コードを読み取り、Expo Go アプリで開く」方式です。この場合、ターミナルは Rork 側の仕組みで動いているため、手元で npx expo login をする場面があるのかどうかは、私の確認した範囲では分かりませんでした。Rork の FAQ にも、プレビューのログイン手順は書かれていません。
分かっている範囲で、安全な順番を書いておきます。
- Expo Go アプリ側のログインは、今のうちに済ませておいて損はありません
- Rork から書き出した Expo プロジェクトを自分のパソコンで
npx expo startするなら、ターミナル側のログインも必要になります - それでも開かない場合は、Rork 側の案内を待つか、問い合わせる前に下の「次の一手」を試します
「開けない」ときは、画面の案内が示す側から先に直します。 順番を決めずに両方を触ると、どちらで直ったのかが分からなくなるからです。
直らないときの次の一手
ログインを済ませても開かないときは、別の原因が重なっています。次の順で確かめてみてください。
- iPhone とパソコンが同じ Wi-Fi にいるか(会社や学校のネットワークは、端末同士の通信を止めることがあります)
- Expo Go が最新版か(古い版だと、プロジェクトの SDK 版と合わないことがあります)
- プロジェクトの SDK 版が、Expo Go の対応範囲に入っているか
Expo Go はあくまで学習用の遊び場であり、製品版のアプリづくりには開発ビルドを勧める、というのが公式の立場です。ログイン要件が増えたいま、そちらへ移る時期を考えておくのも一つの手です。
次の一歩
今日のうちに、ターミナルで npx expo whoami を一度実行し、出てきた名前をメモしておいてください。次に開けなくなったとき、その名前と Expo Go 側の名前を見比べるだけで、原因の半分は絞れます。
USB でスマホに入れる道に切り替えるかどうかは、Rork Companion の無料実機テストをどこまで引っ張れるかに判断の目安をまとめています。Companion が繋がらないときは、接続の切り分けガイドもご覧ください。
この確認だけは、新しいツールを入れるたびに最初にやるようにしています。