{
"name": "xxx-app",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "./scripts/run-android.sh",
"android:release": "./scripts/build-android-release.sh",
"ios": "./scripts/run-ios.sh",
"ios:release": "./scripts/run-ios-release.sh",
"build:android": "NODE_ENV=production cd android && ./gradlew assembleRelease && cd ..",
"build:ios": "NODE_ENV=production react-native run-ios --configuration Release",
"bundle:android": "NODE_ENV=production react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res",
"bundle:ios": "NODE_ENV=production react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ios/main.jsbundle --assets-dest ios",
"lint": "eslint . --ext .ts,.tsx,.js,.jsx --max-warnings 0",
"lint:fix": "eslint . --ext .ts,.tsx,.js,.jsx --fix",
"lint:imports": "eslint . --ext .ts,.tsx,.js,.jsx",
"type-check": "tsc --noEmit",
"type-check:watch": "tsc --noEmit --watch",
"format": "prettier --write '**/*.{ts,tsx,js,jsx,json}'",
"format:check": "prettier --check '**/*.{ts,tsx,js,jsx,json}'",
"validate": "npm run lint && npm run type-check && npm run test:ci",
"validate:quick": "npm run lint && npm run type-check",
"start": "STORYBOOK_ENABLED=false react-native start",
"start:reset": "STORYBOOK_ENABLED=false react-native start --reset-cache",
"clear:policies": "./scripts/clear-policies-data.sh",
"install:clean": "rm -rf node_modules package-lock.json && npm install --legacy-peer-deps",
"install:force": "npm install --legacy-peer-deps --force",
"clean:metro": "rm -rf $TMPDIR/metro-* $TMPDIR/haste-*",
"clean:build": "cd android && ./gradlew clean && cd .. && cd ios && xcodebuild clean && cd ..",
"clean:all": "npm run clean:metro && npm run clean:build && rm -rf node_modules",
"storybook": "STORYBOOK_ENABLED=true react-native start",
"storybook:ios": "STORYBOOK_ENABLED=true react-native run-ios",
"storybook:android": "STORYBOOK_ENABLED=true react-native run-android",
"test": "jest",
"test:ci": "jest --ci --coverage --watchAll=false --passWithNoTests",
"test:coverage": "jest --coverage",
"storybook-generate": "sb-rn-get-stories",
"deps:check": "npm list --depth=0",
"prepare": "husky install",
"security:scan": "npx detect-secrets scan --baseline .secrets.baseline",
"security:audit": "npm audit --audit-level=moderate",
"security:fix": "npm audit fix",
"pre-commit": "npm run lint && npm run type-check && npm run security:scan && npm run security:audit",
"release:create": "release-please release-pr --token=$GITHUB_TOKEN",
"release:github": "release-please github-release --token=$GITHUB_TOKEN",
"release:manifest": "release-please manifest",
"release:changelog": "release-please changelog",
"postinstall": "patch-package"
},
"dependencies": {
"...": "...",
"@react-native-firebase/app": "23.8.6",
"@react-native-firebase/crashlytics": "23.8.6",
"@react-native-firebase/perf": "23.8.6",
"@react-native-firebase/remote-config": "23.8.6",
"react": "19.1.0",
"react-native": "0.81.1",
"react-native-nitro-modules": "0.31.10",
},
"engines": {
"node": ">=20"
},
"lint-staged": {
"*.{ts,tsx}": [
"eslint --fix",
"prettier --write"
],
"*.{js,jsx}": [
"eslint --fix",
"prettier --write"
],
"*.{json,md}": [
"prettier --write"
]
}
}
Issue
Hi team,
I am using RNFB to track app crashes. While it works well for Android, I am stuck with a weird problem where iOS crashes aren't reported in the FB Console. I can see non-fatal issues reported with the custom logs and sometimes I even see the "crash-free" session percentage drop. However, the crash and consequently its cause aren't reported.
I have tried to force crash both on simulators and real devices with xcode connected and as a release build but no dice.
My setup is:
Looking for guidance on how to resolve the issue.
Project Files
Javascript
Click To Expand
package.json:{ "name": "xxx-app", "version": "0.0.1", "private": true, "scripts": { "android": "./scripts/run-android.sh", "android:release": "./scripts/build-android-release.sh", "ios": "./scripts/run-ios.sh", "ios:release": "./scripts/run-ios-release.sh", "build:android": "NODE_ENV=production cd android && ./gradlew assembleRelease && cd ..", "build:ios": "NODE_ENV=production react-native run-ios --configuration Release", "bundle:android": "NODE_ENV=production react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res", "bundle:ios": "NODE_ENV=production react-native bundle --platform ios --dev false --entry-file index.js --bundle-output ios/main.jsbundle --assets-dest ios", "lint": "eslint . --ext .ts,.tsx,.js,.jsx --max-warnings 0", "lint:fix": "eslint . --ext .ts,.tsx,.js,.jsx --fix", "lint:imports": "eslint . --ext .ts,.tsx,.js,.jsx", "type-check": "tsc --noEmit", "type-check:watch": "tsc --noEmit --watch", "format": "prettier --write '**/*.{ts,tsx,js,jsx,json}'", "format:check": "prettier --check '**/*.{ts,tsx,js,jsx,json}'", "validate": "npm run lint && npm run type-check && npm run test:ci", "validate:quick": "npm run lint && npm run type-check", "start": "STORYBOOK_ENABLED=false react-native start", "start:reset": "STORYBOOK_ENABLED=false react-native start --reset-cache", "clear:policies": "./scripts/clear-policies-data.sh", "install:clean": "rm -rf node_modules package-lock.json && npm install --legacy-peer-deps", "install:force": "npm install --legacy-peer-deps --force", "clean:metro": "rm -rf $TMPDIR/metro-* $TMPDIR/haste-*", "clean:build": "cd android && ./gradlew clean && cd .. && cd ios && xcodebuild clean && cd ..", "clean:all": "npm run clean:metro && npm run clean:build && rm -rf node_modules", "storybook": "STORYBOOK_ENABLED=true react-native start", "storybook:ios": "STORYBOOK_ENABLED=true react-native run-ios", "storybook:android": "STORYBOOK_ENABLED=true react-native run-android", "test": "jest", "test:ci": "jest --ci --coverage --watchAll=false --passWithNoTests", "test:coverage": "jest --coverage", "storybook-generate": "sb-rn-get-stories", "deps:check": "npm list --depth=0", "prepare": "husky install", "security:scan": "npx detect-secrets scan --baseline .secrets.baseline", "security:audit": "npm audit --audit-level=moderate", "security:fix": "npm audit fix", "pre-commit": "npm run lint && npm run type-check && npm run security:scan && npm run security:audit", "release:create": "release-please release-pr --token=$GITHUB_TOKEN", "release:github": "release-please github-release --token=$GITHUB_TOKEN", "release:manifest": "release-please manifest", "release:changelog": "release-please changelog", "postinstall": "patch-package" }, "dependencies": { "...": "...", "@react-native-firebase/app": "23.8.6", "@react-native-firebase/crashlytics": "23.8.6", "@react-native-firebase/perf": "23.8.6", "@react-native-firebase/remote-config": "23.8.6", "react": "19.1.0", "react-native": "0.81.1", "react-native-nitro-modules": "0.31.10", }, "engines": { "node": ">=20" }, "lint-staged": { "*.{ts,tsx}": [ "eslint --fix", "prettier --write" ], "*.{js,jsx}": [ "eslint --fix", "prettier --write" ], "*.{json,md}": [ "prettier --write" ] } }firebase.jsonfor react-native-firebase v6:{ "react-native": { "crashlytics_auto_collection_enabled": true, "crashlytics_debug_enabled": true, "crashlytics_disable_auto_disabler": true, "crashlytics_javascript_exception_handler_chaining_enabled": false, "analytics_auto_collection_enabled": true, "perf_auto_collection_enabled": true } }iOS
Click To Expand
ios/Podfile:AppDelegate.swift:Environment
Click To Expand
react-native infooutput:react-native-firebaseversion you're using that has this issue:23.5.0Firebasemodule(s) you're using that has the issue:TypeScript?Y&5.9.2React Native FirebaseandInvertaseon Twitter for updates on the library.