React Native, Android : Firestore (5.5.0): INTERNAL UNHANDLED ERROR

Environment

  • Operating System version: MacOS
  • React Native, Expo SDK 30
  • Firebase SDK version: 5.5.4
  • Firebase Product:
          firebase@^5.5.4:
          version "5.5.4"
          resolved "https://registry.yarnpkg.com/firebase/-/firebase-5.5.4.tgz#6c6c9c829c1c223dd6bc9c5a7805a5ebcaf36ae2"
         dependencies:
           "@firebase/app" "0.3.4"
           "@firebase/auth" "0.7.8"
           "@firebase/database" "0.3.6"
           "@firebase/firestore" "0.8.4"
           "@firebase/functions" "0.3.1"
           "@firebase/messaging" "0.3.6"
           "@firebase/polyfill" "0.3.3"
           "@firebase/storage" "0.2.3"
    

Problem

I’m building react native app using expo SDK 30 and firebase 5.5.4.
The code working flawlessly on iOS but not on Android.

I always get this error from firestore and I don’t know how to debug it.

{
  "message": "console.error: \"[2018-10-18T10:01:45.245Z]  @firebase/firestore:\", \"Firestore (5.5.0): INTERNAL UNHANDLED ERROR: \", \"forEach@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:199535:95\nonTransactionCommitted@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:203516:46\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:203446:70\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:199430:34\nwrapUserFunction@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:199415:32\nwrapSuccess@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:199429:45\nnext@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:199388:44\nrunTransaction@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:203445:50\ngetLastStreamToken@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:202513:51\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:204431:74\nstep@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169184:39\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169114:32\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169086:83\ntryCallTwo@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16414:9\ndoResolve@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16578:25\nPromise@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16437:14\n__awaiter@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169063:44\nenableNetwork@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:204422:37\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:204936:58\nstep@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169184:39\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169114:32\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169086:83\ntryCallTwo@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16414:9\ndoResolve@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16578:25\nPromise@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16437:14\n__awaiter@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169063:44\napplyPrimaryState@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:204930:37\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:206113:74\nstep@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169184:39\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169114:32\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169086:83\ntryCallTwo@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16414:9\ndoResolve@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16578:25\nPromise@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16437:14\n__awaiter@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169063:44\napplyPrimaryState@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:206103:37\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:207360:78\nsetPrimaryStateListener@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:203415:40\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:207359:84\nstep@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169184:39\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169114:32\nfulfilled@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:169066:44\ntryCallOne@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16405:16\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:16506:27\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:3236:26\n_callTimer@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:3125:17\n_callImmediatesPass@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:3161:19\ncallImmediates@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:3380:33\n__callImmediates@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:2714:32\nhttp://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:2541:34\n__guardSafe@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:2698:13\nflushedQueue@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:2540:21\nflushedQueue@[native code]\ninvokeCallbackAndReturnFlushedQueue@http://192.168.1.6:19001/node_modules/expo/AppEntry.bundle?platform=android&dev=true&minify=false&hot=false&assetPlugin=%%2FUsers%%2Fgama%%2FWorkspace%%2Freact-native%%2Fexpo-project%%2Fnode_modules%%2Fexpo%%2Ftools%%2FhashAssetFiles:2533:33\ninvokeCallbackAndReturnFlushedQueue@[native code]\"",
  "stack": [
    {
      "functionName": "__expoConsoleLog",
      "lineNumber": 98,
      "columnNumber": 8,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/expo/src/logs/RemoteConsole.js"
    },
    {
      "functionName": "error",
      "lineNumber": 69,
      "columnNumber": 16,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/ReactNative/YellowBox.js"
    },
    {
      "functionName": "defaultLogHandler",
      "lineNumber": 69,
      "columnNumber": 32,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/@firebase/logger/dist/index.cjs.js"
    },
    {
      "functionName": "error",
      "lineNumber": 159,
      "columnNumber": 31,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/@firebase/logger/dist/index.cjs.js"
    },
    {
      "functionName": "error",
      "lineNumber": 99,
      "columnNumber": 30,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/@firebase/firestore/dist/index.cjs.js"
    },
    {
      "functionName": null,
      "lineNumber": 7733,
      "columnNumber": 22,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/@firebase/firestore/dist/index.cjs.js"
    },
    {
      "functionName": "tryCallOne",
      "lineNumber": 37,
      "columnNumber": 14,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/promise/setimmediate/core.js"
    },
    {
      "functionName": null,
      "lineNumber": 123,
      "columnNumber": 25,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/promise/setimmediate/core.js"
    },
    {
      "functionName": null,
      "lineNumber": 295,
      "columnNumber": 23,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/Core/Timers/JSTimers.js"
    },
    {
      "functionName": "_callTimer",
      "lineNumber": 152,
      "columnNumber": 6,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/Core/Timers/JSTimers.js"
    },
    {
      "functionName": "_callImmediatesPass",
      "lineNumber": 200,
      "columnNumber": 17,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/Core/Timers/JSTimers.js"
    },
    {
      "functionName": "callImmediates",
      "lineNumber": 464,
      "columnNumber": 11,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/Core/Timers/JSTimers.js"
    },
    {
      "functionName": "__callImmediates",
      "lineNumber": 327,
      "columnNumber": 4,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js"
    },
    {
      "functionName": null,
      "lineNumber": 145,
      "columnNumber": 6,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js"
    },
    {
      "functionName": "__guardSafe",
      "lineNumber": 314,
      "columnNumber": 6,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js"
    },
    {
      "functionName": "flushedQueue",
      "lineNumber": 144,
      "columnNumber": 17,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js"
    },
    {
      "functionName": "invokeCallbackAndReturnFlushedQueue",
      "lineNumber": 140,
      "columnNumber": 11,
      "fileName": "/Users/gama/Workspace/react-native/expo-project/node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js"
    }
  ]
}

Steps to reproduce:

{
  "name": "expo-project",
  "main": "node_modules/expo/AppEntry.js",
  "private": true,
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "eject": "expo eject",
    "test": "node node_modules/jest/bin/jest.js",
    "format": "npm-run-all format:*",
    "format:js": "prettier --write {.,**}/*.js",
    "format:json": "prettier --write {.,**}/*.json",
    "format:md": "prettier --write {.,**}/*.md",
    "format:ts": "prettier --write {.,**}/*.{ts,tsx} && tslint --fix -p .",
    "lint": "npm-run-all lint:*",
    "lint:ts": "tslint -p .",
    "tsc": "tsc",
    "clean": "rimraf build",
    "build": "yarn run clean && yarn run tsc --",
    "watch": "yarn run build -- -w",
    "watchAndRunAndroid": "concurrently \"yarn run watch\" \"yarn run android\"",
    "buildRunAndroid": "yarn run build && yarn run watchAndRunAndroid ",
    "watchAndRunIOS": "concurrently \"yarn run watch\" \"yarn run ios\"",
    "buildRunIOS": "yarn run build && yarn run watchAndRunIOS ",
    "watchAndStart": "concurrently \"yarn run watch\" \"yarn run start\"",
    "buildAndStart": "yarn run build && yarn run watchAndStart",
    "android:reactotron": "adb reverse tcp:9090 tcp:9090"
  },
  "dependencies": {
    "@expo/vector-icons": "^8.0.0",
    "@types/react-native-modalbox": "^1.4.7",
    "expo": "^30.0.1",
    "firebase": "^5.5.4",
    "i18next": "^11.9.0",
    "lodash": "^4.17.11",
    "mobx": "4.5.0",
    "mobx-react": "5.2.8",
    "mobx-state-tree": "3.5.0",
    "ramda": "^0.25.0",
    "react": "16.3.1",
    "react-i18next": "^8.0.7",
    "react-native": "https://github.com/expo/react-native/archive/sdk-30.0.0.tar.gz",
    "react-native-animatable": "^1.3.0",
    "react-native-elements": "^1.0.0-beta5",
    "react-native-modalbox": "^1.6.0",
    "react-native-platform-touchable": "^1.1.1",
    "react-native-swipeout": "^2.3.6",
    "react-navigation": "^2.17.0",
    "reactotron-mst": "^2.1.0",
    "rxfire": "^3.0.6",
    "rxjs": "^6.3.3",
    "validate.js": "^0.12.0"
  },
  "devDependencies": {
    "@types/expo": "^27.0.12",
    "@types/i18next": "^11.9.1",
    "@types/jest": "^23.3.3",
    "@types/lodash": "^4.14.117",
    "@types/ramda": "^0.25.39",
    "@types/react": "^16.4.14",
    "@types/react-dom": "^16.0.8",
    "@types/react-i18next": "^7.8.2",
    "@types/react-native": "^0.57.1",
    "@types/react-native-elements": "^0.18.0",
    "@types/react-navigation": "^2.0.23",
    "@types/react-test-renderer": "^16.0.3",
    "@types/validate.js": "^0.11.0",
    "concurrently": "^4.0.1",
    "jest": "^23.6.0",
    "jest-expo": "^30.0.0",
    "npm-run-all": "^4.1.3",
    "prettier": "^1.14.3",
    "reactotron-react-native": "^2.1.0",
    "rimraf": "^2.6.2",
    "ts-jest": "^23.10.3",
    "tslint": "^5.11.0",
    "tslint-config-prettier": "^1.15.0",
    "typescript": "^3.1.1"
  }
}

Relevant Code:

// get users from firestore using rxjs
export const getUsers = (): Observable<Array<{}>> => {
  const firestore = firebaseApp.firestore()
  firestore.settings({ timestampsInSnapshots: true })

  let usersCollection = firestore.collection("users")

  return combineLatest([collectionData(usersCollection)])
    .pipe(
      map(([users]) => {
        return users
      })
    )
}

I only call that function after login then the app crashed.

1 possible answer(s) on “React Native, Android : Firestore (5.5.0): INTERNAL UNHANDLED ERROR

  1. I had a working version with 5.5.4 a few weeks ago, today my calls (get, add, .. ) doesn’t work anymore but transaction still does. I think I have about the same error. ‘Internal unhandled async: Async already failed’.

    I used an older version of firebase 5.3.0 (5.4 or older than 5.3 doesn’t work) and it works fine, tho I have no idea what changed.