Contents
1.どんな障害?
firestoreにアクセスできず、読み込みができなくなった。
メッセージは以下の通り
@firebase/firestore:, Firestore (8.10.0): Could not reach Cloud Firestore backend. Backend didn’t respond within 10 seconds.
This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
2.環境
- react-native”: “0.69.6”
- “firebase”: “^8.10.0”,
3.状況
- expo goで開発していたが、react-native-google-mobile-adsを導入しようと考えた。
- これは、要Development buildとやらで開発しないといけない。ということなので
- expo-dev-clientを導入、eas buildでビルドを行い、実機にインストールしたが、
- 上記のメッセージが出て、アプリ上もファイルを読み込めない状況に陥った。
4.対応
googleで検索!
4.1. 最初のステップ
app.jsxで、firabaseのinitializeをしているはずだが、その次の行に、settings命令を追記する。
firebase.initializeApp(firebaseConfig);
firebase.firestore().settings({ experimentalForceLongPolling: true });
4.2. 動かないよ
これで再実行してみたけど、動作は変わらず。
しょうがないので、Development build前に戻し、expo goで実行すると問題なく動作する。
4.3. 次のステップ
環境が不備なのか?
Android用の環境を作る必要があるという情報を呼んだので、以下のコマンドを実行する。
npx expo run:android
→アプリフォルダー配下に、androidフォルダーが作成されていることを確認。
4.4. 動いた
再度、4.1の修正を行って、実行
ちゃんと読み込めるようになりました。
5.総評
React Nativeは、たしかに作りやすいのだけれど、ネット上には日本語の情報が少なく、
また開発途上のシステムなので、ちゃんと情報を見極めないと、書かれたときは動いたけれど、今のバージョンで動かない。というのがあって、なかなか難しいですね。