壁紙アプリの差し替え作業を終えて、その足で Rork のプレビューを手元の iPhone で開こうとした朝のことでした。カメラを QR に向けて、いつもどおり待ちます。いつまで経っても読み込みが始まりません。
真っ先に疑ったのはネットワークでした。ルーターを再起動し、テザリングに切り替え、Expo Go を消して入れ直しました。そこまでで 30 分ほど溶かしております。
原因はもっと手前にありました。2026 年 9 月 3 日から、Expo Go で開発中のプロジェクトを開くにはターミナルとアプリの両方で同じアカウントにログインしている必要がある、という変更が入っていたのです。昨日と同じ手順が今日は通らない理由が、手元の環境ではなく告知の側にありました。
同じところで手が止まっている方に向けて、確かめる順番と、そもそもログインが要らない経路を書き残します。
変わったのは「両側でログインしていること」です
Expo の changelog に Login now required for running projects in Expo Go(2026 年 9 月 3 日)として出ています。要点は 3 つです。
第一に、ターミナルで動かしている Expo CLI と、端末の Expo Go アプリの両方でログインしている必要があります。第二に、その 2 つは同じアカウントでなければなりません。第三に、片方だけログインしている場合、Expo Go 側が「ターミナルか、アプリか、その両方か」をメッセージで教えてくれます。
ここで大事なのは、これが Expo Go に限った話だという点です。development build には適用されません。シミュレータ版も対象外です。現時点で適用されているのは iOS 版の最新の Expo Go だけで、Android 版は将来的に広げると書かれています。
Rork のプレビューは、Expo プロジェクトの場合この Expo Go を経由します。つまり Rork 側では何も変えていないのに、手元の挙動だけが変わった、という形で現れます。自分が変えていない日に壊れたものは、自分の外側から先に見ます。 私はこの一件から、そう順番を決めました。
手元で確かめる順番
ターミナル側から見ます。いま誰としてログインしているかを表示するコマンドがあります。
# いまログインしているアカウント名を表示します
npx expo whoami
# 未ログインなら "Not logged in" と返ります
# ログインします(メールまたはユーザー名とパスワードを聞かれます)
npx expo login
# もう一度確かめてから、開発サーバーを立ち上げ直します
npx expo whoami
npx expo startwhoami を先に挟んでいるのは、ログインしていないのか、別のアカウントで入っているのかを 1 行で切り分けるためです。「ログインした覚えはある」という記憶ほど当てになりません。
アプリ側は画面の操作です。Expo Go を開いてホームのタブに移り、右上のアバターのアイコンをタップします。そこにログインのフォームが出ていれば、未ログインの状態です。ターミナルと同じアカウントで入ります。
探し始める前に知っておくと早いことが一つあります。どちら側が足りないのかは、Expo Go が端末の画面に出してくれます。ただしそれは端末側にだけ出るのです。QR を読んでからすぐ手元のターミナルに視線を戻してしまうと、答えの書いてある唯一の画面から離れることになります。私は最初の一度、まさにそれをやりました——そのあと、何も語らないサーバーのログを 20 分ほど読んでおりました。
両側が揃ったら、もう一度 QR を読みます。カメラを構えるのが面倒であれば、Expo Go のホームタブに開発サーバーのアドレスが並んでいますので、そこをタップしても同じところへ着きます。私は再現確認をするときはこちらを使っております。指の往復が 1 回減ります。
いちばん抜けるのは「同じアカウントか」です
最初に私がつまずいたのは、ログインの有無ではありませんでした。両側ともログイン済みで、それでも開かなかったのです。
受託の案件で使うアカウントと、自分のアプリで使うアカウントを分けていました。ターミナルには前の作業のまま受託側で入っており、iPhone の Expo Go には自分のアカウントで入っていました。どちらも「ログイン済み」と表示されます。突き合わせるまで気づけませんでした。
アカウントを分けている方は、npx expo whoami の出力と、Expo Go のアバターに出ている名前を並べて読んでください。ここが食い違っていると、症状はネットワークの不調とほとんど見分けがつきません。
両側の画面を「見た」で済ませず、二つの名前を並べて突き合わせます。 分けたアカウントを持っている限り、この確認は省けないのだと感じております。
ログインが要る経路と、要らない経路
同じ「実機で見る」でも、経路によって条件が違います。一度だけ表にして手元に置いておくと、次に詰まったときの往復が減ります。
| 経路 | ログイン | 補足 |
|---|---|---|
| iOS の Expo Go で QR を読む | ターミナルとアプリの両方で必要 | 同一アカウントであること |
| Android の Expo Go | 現時点では未適用 | 将来的に広げると告知されています。公式は先にログインしておくことを勧めています |
| シミュレータ版の Expo Go | 対象外 | 端末実機とは条件が異なります |
| development build | 不要 | Expo Go を経由しないため影響を受けません |
表にして分かるのは、iOS の実機 × Expo Go という 1 マスだけが変わったということです。Android の端末で試している同僚が「普通に開くけれど」と言うのは、環境が雑だからではありません。条件が違うだけなのです。
なお、Wi-Fi やネットワーク側を疑う手順そのものが不要になったわけではありません。ログインを揃えても開かないときは、同じ Wi-Fi のはずなのに、Rork Companion のプレビューが出てこないときで書いた確認の順番に戻ります。ログインの確認を、その順番の一番上に足す、という位置づけです。
詰まりが続くなら、development build へ寄せます
ここからは判断の話です。Expo Go は最初の一歩としてはよくできていますが、通知やカメラのように Expo Go では確かめられない機能に手が伸びた時点で、いずれ development build が必要になります。
ログインの件で往復が増えるようであれば、その移行を前倒しにしてよいのだと思います。development build にはこのログイン要件が適用されません。ビルドを一度作る手間と、毎朝の小さな詰まりを比べて、私は前者を選ぶ日が増えました。
一方で、まだ画面の見た目を触っている段階であれば、Expo Go のままで十分です。両方を残したまま、確認したいものによって使い分けるのがいちばん現実的でした。
新規プロジェクトの作り方そのものが変わっている点は、Rork の新規作成から Expo が消えました。手元のプロジェクトを続けるか、SwiftUI へ作り直すかに書いております。いま手元にある Expo プロジェクトをこの先どう扱うかを決めていない方は、あわせてご覧ください。
まずは今日、npx expo whoami を一度だけ打って、Expo Go のアバターに出ている名前と並べてみてください。そこが揃っているかどうかを知っているだけで、次に開かなくなった朝の 30 分が戻ってきます。