I'm trying to build my project, but it has tuned into a nightmare...
Now I'm facing this issue when I run ./gradlew assembleRelease
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:bundleReleaseJsAndAssets'.
And more specifically:
transform[stderr]: Trace: The node type SpreadProperty has been renamed to SpreadElement
transform[stderr]: at Object.isSpreadProperty (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/types/lib/validators/generated/index.js:4208:11)
transform[stderr]: at hasSpread (/Users/danielrvt/IdeaProjects/my-app/node_modules/babel-plugin-transform-object-rest-spread/lib/index.js:38:13)
transform[stderr]: at PluginPass.ObjectExpression (/Users/danielrvt/IdeaProjects/my-app/node_modules/babel-plugin-transform-object-rest-spread/lib/index.js:234:14)
transform[stderr]: at newFn (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/visitors.js:193:21)
transform[stderr]: at NodePath._call (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/path/context.js:53:20)
transform[stderr]: at NodePath.call (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/path/context.js:40:17)
transform[stderr]: at NodePath.visit (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/path/context.js:88:12)
transform[stderr]: at TraversalContext.visitQueue (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/context.js:118:16)
transform[stderr]: at TraversalContext.visitSingle (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/context.js:90:19)
transform[stderr]: at TraversalContext.visit (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/context.js:146:19)
App.js: Cannot read property 'bindings' of null
TypeError: Cannot read property 'bindings' of null
at Scope.moveBindingTo (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/scope/index.js:867:13)
at BlockScoping.updateScopeInfo (/Users/danielrvt/IdeaProjects/my-app/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:364:17)
at BlockScoping.run (/Users/danielrvt/IdeaProjects/my-app/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:330:12)
at PluginPass.BlockStatementSwitchStatementProgram (/Users/danielrvt/IdeaProjects/my-app/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:70:24)
at newFn (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/visitors.js:193:21)
at NodePath._call (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/path/context.js:53:20)
at NodePath.call (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/path/context.js:40:17)
at NodePath.visit (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/path/context.js:88:12)
at TraversalContext.visitQueue (/Users/danielrvt/IdeaProjects/my-app/node_modules/#babel/traverse/lib/context.js:118:16)
I honestly have absolutely no idea what's wrong now, how can I debug this?
This is my package.json:
{
"name": "my-app",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"#ptomasroos/react-native-multi-slider": "0.0.12",
"firebase": "^5.1.0",
"javascript-time-ago": "^1.0.30",
"mobx": "^4.1.1",
"mobx-react": "^5.0.0",
"native-base": "^2.8.1",
"prop-types": "^15.6.2",
"protobufjs": "^6.8.8",
"react": "16.2.0",
"react-native": "^0.57.7",
"react-native-actionsheet": "^2.3.0",
"react-native-aws3": "0.0.8",
"react-native-axios": "^0.17.1",
"react-native-billing": "^2.9.1",
"react-native-card-stack-swiper": "^1.0.5",
"react-native-collapsible": "^0.10.0",
"react-native-cookies": "^3.2.0",
"react-native-datepicker": "^1.6.0",
"react-native-dropdownalert": "^3.5.0",
"react-native-elements": "^0.19.0",
"react-native-event-listeners": "^1.0.3",
"react-native-expandable-section-flatlist": "^1.0.3",
"react-native-fbsdk": "^0.8.0",
"react-native-fcm": "^16.0.0",
"react-native-floating-action": "^1.10.1",
"react-native-geocoding": "^0.3.0",
"react-native-gifted-chat": "^0.4.3",
"react-native-google-places-autocomplete": "^1.3.6",
"react-native-hide-show-password-input": "^1.0.7",
"react-native-image-crop-picker": "^0.19.3",
"react-native-image-picker": "^0.26.10",
"react-native-image-placeholder": "^1.0.14",
"react-native-instagram-login": "^1.0.7",
"react-native-keyboard-aware-scroll-view": "^0.4.4",
"react-native-keyboard-aware-scrollview": "^2.0.0",
"react-native-keyboard-spacer": "^0.4.1",
"react-native-linear-gradient": "^2.4.0",
"react-native-linkedin": "^1.3.1",
"react-native-localization": "^2.0.0",
"react-native-material-bottom-navigation": "^0.9.0",
"react-native-modal-datetime-picker": "^6.0.0",
"react-native-open-settings": "^1.0.1",
"react-native-pages": "^0.7.0",
"react-native-permissions": "^1.1.1",
"react-native-picker-select": "^5.1.0",
"react-native-popup-menu": "^0.12.4",
"react-native-pulse": "^1.0.6",
"react-native-scrollable-tab-view": "^0.8.0",
"react-native-share": "^1.0.26",
"react-native-simple-toast": "0.0.8",
"react-native-snap-carousel": "^3.7.2",
"react-native-splash-screen": "^3.1.1",
"react-native-star-rating": "^1.0.9",
"react-native-swipe-cards": "^0.1.1",
"react-native-swipe-list-view": "^1.0.7",
"react-native-swipeable-flat-list": "0.0.5",
"react-native-swipeout": "^2.3.3",
"react-native-switch": "^1.4.0",
"react-native-twitter-signin": "https://github.com/GoldenOwlAsia/react-native-twitter-signin.git#master",
"react-native-view-more-text": "^2.0.1",
"react-native-viewpager": "^0.2.13",
"react-navigation": "^1.0.3",
"rn-viewpager": "^1.2.9"
},
"devDependencies": {
"#babel/plugin-proposal-decorators": "^7.2.0",
"babel-jest": "22.2.2",
"babel-preset-react-native": "4.0.0",
"jest": "22.2.2",
"react-test-renderer": "16.2.0"
},
"jest": {
"preset": "react-native",
"transform": {
"^.+\\.js$": "<rootDir>/node_modules/react-native/jest/preprocessor.js"
}
}
}
From https://www.npmjs.com/package/babel-preset-react-native
babel-preset-react-native has been replaced by
metro-react-native-babel-preset, which now uses Babel 7.0.0. If you're
using React Native v0.57 or later you should update your babel config
to point to the metro-react-native-babel-preset preset.
I think this may be related to a particular issue with babel-core, you could try this solution https://github.com/babel/babel/issues/8263#issuecomment-402546923
Add to your package.json
"babel-plugin-transform-object-rest-spread": "^7.0.0-beta.3"
and then npm install
Related
I am using react-native-webview for my react native app which has the rn version 0.64.4,
But I cannot open screen when we have a web view in it, the app get crash immediately. this is only happening on the android. Then I open up the android project via android studio, then I could see the below error on the log. How can I fix this issue?
Error log:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.xapp, PID: 21712
java.lang.IncompatibleClassChangeError: Found interface com.facebook.react.uimanager.events.EventDispatcher, but class was expected (declaration of 'com.facebook.react.uimanager.events.EventDispatcher' appears in /data/app/~~qPom7HPfdYNLFEMUio836A==/com.verime-gQSY9JQLtB6GGgsqfvIrFg==/base.apk!classes3.dex)
at com.reactnativecommunity.webview.RNCWebViewManager.dispatchEvent(RNCWebViewManager.java:168)
at com.reactnativecommunity.webview.RNCWebViewManager$RNCWebChromeClient.onProgressChanged(RNCWebViewManager.java:1153)
at la.handleMessage(chromium-TrichromeWebViewGoogle6432.aab-stable-530410534:278)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8751)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
This is my package.json
{
"name": "xapp",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint .",
"np": "np --no-publish",
"postversion": "react-native-version",
"build:ios": "react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios",
"postinstall": "patch-package"
},
"dependencies": {
"#react-native-async-storage/async-storage": "^1.17.10",
"#react-native-community/art": "^1.2.0",
"#react-native-community/checkbox": "^0.5.7",
"#react-native-community/datetimepicker": "^3.4.1",
"#react-native-community/picker": "^1.8.1",
"#react-native-firebase/app": "^11.0.0",
"#react-native-firebase/messaging": "^11.0.0",
"#react-native-picker/picker": "^2.4.8",
"#react-navigation/bottom-tabs": "^5.5.2",
"#react-navigation/native": "^5.6.1",
"#react-navigation/stack": "^5.5.1",
"#woonivers/react-native-document-scanner": "^2.1.1",
"axios": "^0.21.1",
"base-64": "^0.1.0",
"install": "^0.13.0",
"lottie-react-native": "^5.1.4",
"moment": "^2.27.0",
"native-base": "^2.15.2",
"npm": "^7.20.5",
"pdf-lib": "^1.10.0",
"radio-buttons-react-native": "^1.0.4",
"react": "17.0.1",
"react-native": "0.64.4",
"react-native-biometrics": "^3.0.1",
"react-native-blob-util": "^0.15.0",
"react-native-camera": "^3.30.0",
"react-native-circular-progress": "^1.3.7",
"react-native-contacts": "^7.0.2",
"react-native-device-info": "^8.0.1",
"react-native-document-picker": "^5.0.3",
"react-native-floating-action": "^1.21.0",
"react-native-fs": "^2.16.6",
"react-native-gesture-handler": "^1.10.3",
"react-native-image-crop-picker": "^0.36.2",
"react-native-image-picker": "^3.3.2",
"react-native-image-progress": "^1.1.1",
"react-native-image-resizer": "^1.2.6",
"react-native-image-to-pdf": "^1.2.0",
"react-native-image-tools-wm": "^1.5.8",
"react-native-invoke-app": "^1.0.6",
"react-native-jitsi-meet": "^2.2.0",
"react-native-keyboard-aware-scroll-view": "^0.9.5",
"react-native-keychain": "^7.0.0",
"react-native-linear-gradient": "^2.6.2",
"react-native-masked-text": "^1.13.0",
"react-native-modal-datetime-picker": "^9.2.0",
"react-native-paper": "^3.10.1",
"react-native-pdf": "^6.2.0",
"react-native-pdf-lib": "^1.0.0",
"react-native-permissions": "^3.0.5",
"react-native-perspective-image-cropper": "git+https://github.com/kmwi/react-native-perspective-image-cropper.git",
"react-native-progress": "^4.1.2",
"react-native-reanimated": "^1.9.0",
"react-native-rectangle-scanner": "^1.0.10",
"react-native-safe-area-context": "^3.0.5",
"react-native-screens": "^2.9.0",
"react-native-select-multiple": "^2.1.0",
"react-native-signature-canvas": "4.4.1",
"react-native-simple-radio-button": "^2.7.4",
"react-native-simple-toast": "^1.1.2",
"react-native-snackbar": "^2.4.0",
"react-native-snap-carousel": "^3.9.1",
"react-native-status-bar-height": "^2.6.0",
"react-native-svg": "git+https://github.com/expo/react-native-svg.git",
"react-native-tooltips": "^1.0.3",
"react-native-user-avatar": "^1.0.8",
"react-native-vector-icons": "^7.0.0",
"react-native-view-pdf": "^0.11.0",
"react-native-virtual-keyboard": "^1.1.0",
"react-native-walkthrough-tooltip": "^1.3.1",
"react-native-webview": "11.18.1",
"react-navigation": "^4.3.9",
"react-navigation-drawer": "^2.4.13",
"react-navigation-stack": "^2.7.0",
"react-redux": "^7.2.0",
"redux": "^4.0.5",
"redux-devtools-extension": "^2.13.8",
"redux-persist": "^6.0.0",
"redux-saga": "^1.1.3"
},
"devDependencies": {
"#babel/core": "^7.12.9",
"#babel/runtime": "^7.12.5",
"#react-native-community/eslint-config": "^2.0.0",
"babel-jest": "^26.6.3",
"eslint": "7.14.0",
"jest": "^26.6.3",
"jetifier": "^2.0.0",
"metro-react-native-babel-preset": "^0.64.0",
"np": "^7.6.1",
"patch-package": "^6.5.0",
"postinstall-postinstall": "^2.1.0",
"react-native-version": "^4.0.0",
"react-test-renderer": "17.0.1",
"reactotron-react-native": "^5.0.0",
"reactotron-redux": "^3.1.3",
"reactotron-redux-saga": "^4.2.3"
},
"jest": {
"preset": "react-native"
}
}
Similar case here, the libraries involved are invertase/react-native-apple-authentication and react-native-webview. They suddenly started crashing due to a Kotlin version difference, after correcting them, react-native-reanimated started giving a similar error as yours, but instead of expecting a class, it expects interface, the other way around.
Found class com.facebook.react.uimanager.events.EventDispatcher, but interface was expected.
at com.swmansion.reanimated.NodesManager.(NodesManager.java:116)
UPDATE: I just resolved my problem, it was due to a library trying to use a newer version of react native, and I ended upgrading my project to RN 64.
Since RN 64, the EventDispatcher.java file in the react-native project changed a lot, from class in 63.5 to a interface in 64. Your issue could be that a library is trying to use older RN version and is expecting a class, but your RN version already works with Interface regarding that file.
Hope it helps you, good luck!
I have an otherwise working React-Native app but need to include in-app purchases for it to be accepted on the app store.
After a little Googling, it looks like react-native-iap is pretty much the only option.
First Error
After following the installation steps HERE, I get the following error in Android Studio:
e: C:\path_to_my_project\node_modules\react-native-iap\android\src\play\java\com\dooboolab\RNIap\RNIapModule.kt: (215, 37): Type mismatch: inferred type is String? but String was expected
As stated in the link, the error is being thrown in the RNIapModule.kt file, which I will link an excerpt from below (the full code pushes me over the character limit, but I have not changed it since installation).
I undid all the changes from the instructions, and it seems the only thing that prevents me from getting this error is not adding the store specification in android/app/build.gradle, which of course, also errors out, I assume just before the error mention above.
Second Error
Looking higher up in build section, I see another error:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':react-native-iap:compilePlayDebugKotlin'.
> Compilation error. See log for more details
Error log: An unexpected packet was received before the handshake.
RN and IAP versions
React-Native version: 0.63.4
react-native-iap version: ^8.0.5
Full dependency list
"dependencies": {
"#react-native-async-storage/async-storage": "^1.13.2",
"#react-native-community/checkbox": "^0.5.7",
"#react-native-community/masked-view": "^0.1.11",
"#react-native-community/netinfo": "^6.0.0",
"#react-native-community/progress-bar-android": "^1.0.4",
"#react-native-community/progress-view": "^1.2.3",
"#reduxjs/toolkit": "^1.4.0",
"#thecodingmachine/redux-toolkit-wrapper": "1.3.0",
"axios": "^0.21.1",
"buffer": "^6.0.3",
"date-fns": "^2.19.0",
"es6-symbol": "^3.1.3",
"flipper-plugin-react-native-inspect-json-client": "^0.1.2",
"formik": "^2.1.4",
"i18next": "^19.8.2",
"lottie-ios": "3.1.8",
"lottie-react-native": "4.0.2",
"moment": "^2.29.1",
"prop-types": "^15.7.2",
"ramda": "^0.27.1",
"react": "16.13.1",
"react-i18next": "^11.7.3",
"react-native": "0.63.4",
"react-native-app-intro-slider": "^3.0.0",
"react-native-appearance": "^0.3.4",
"react-native-chart-kit": "^6.10.1",
"react-native-charts-wrapper": "^0.5.7",
"react-native-copilot": "^2.5.0",
"react-native-dotenv": "^0.2.0",
"react-native-flipper": "^0.130.0",
"react-native-gesture-handler": "^1.10.3",
"react-native-iap": "^8.0.5",
"react-native-image-crop-picker": "^0.35.3",
"react-native-image-picker": "^3.1.4",
"react-native-iphone-x-helper": "^1.3.1",
"react-native-map-link": "^2.7.25",
"react-native-material-menu": "^1.2.0",
"react-native-modal": "^11.7.0",
"react-native-permissions": "^3.2.0",
"react-native-picker-select": "^6 P.5.0",
"react-native-progress": "^5.0.0",
"react-native-prompt-android": "^1.1.0",
"react-native-reanimated": "^2.3.0",
"react-native-safe-area-context": "^3.2.0",
"react-native-screens": "^3.3.0",
"react-native-size-matters": "^0.3.0",
"react-native-sqlite-storage": "^5.0.0",
"react-native-svg": "^12.1.0",
"react-native-template-": "thecodingmachine/react-native-boilerplate",
"react-native-toast-message": "^1.4.9",
"react-native-video": "^5.1.1",
"react-navigation": "^3.11.2",
"react-redux": "^7.2.1",
"redux": "^4.0.5",
"redux-flipper": "^1.4.2",
"redux-logger": "^3.0.6",
"redux-persist": "^6.0.0",
"redux-saga": "^1.0.2",
"reduxsauce": "^1.0.1",
"utf8": "^3.0.0",
"yup": "^0.28.1"
},
"devDependencies": {
"#babel/core": "^7.8.4",
"#babel/plugin-proposal-decorators": "^7.13.5",
"#babel/runtime": "^7.8.4",
"#react-native-community/eslint-config": "^1.1.0",
"babel-jest": "^25.1.0",
"babel-plugin-ignite-ignore-reactotron": "^0.3.0",
"eslint": "^6.5.1",
"eslint-config-prettier": "^4.1.0",
"eslint-config-standard": "^12.0.0",
"eslint-plugin-import": "^2.16.0",
"eslint-plugin-node": "^8.0.1",
"eslint-plugin-prettier": "^3.0.1",
"eslint-plugin-promise": "^4.0.1",
"eslint-plugin-react": "^7.12.4",
"eslint-plugin-react-native": "^3.6.0",
"eslint-plugin-standard": "^4.0.0",
"jest": "^25.1.0",
"metro-react-native-babel-preset": "^0.59.0",
"prettier": "^1.16.4",
"react-native-rename": "^2.4.1",
"react-test-renderer": "16.13.1",
"reactotron-react-native": "^4.0.2",
"reactotron-redux": "^3.1.2",
"reactotron-redux-saga": "^4.2.3",
"seamless-immutable": "^7.1.4",
"seamless-immutable-mergers": "^7.1.0"
},
Code from RNIapModule.kt
Just the function block where the error was thrown:
...
#ReactMethod
fun getItemsByType(type: String?, skuArr: ReadableArray, promise: Promise) {
ensureConnection(
promise,
object : EnsureConnectionCallback {
override fun run(billingClient: BillingClient) {
val skuList = ArrayList<String>()
for (i in 0 until skuArr.size()) {
skuList.add(skuArr.getString(i))
}
...
skuList.add(skuArr.getString(i).orEmpty())
please try added .orEmpty()
I have a react native app that I'm trying to run on Android. However, every time I try to load Android Studio, it complains that I have a duplicate import.
When I check, I can only find one of the imports it complains about:
client master % ag react-native-community_cameraroll
android/app/build.gradle
212: compile project(':#react-native-community_cameraroll')
android/settings.gradle
2:include ':#react-native-community_cameraroll'
3:project(':#react-native-community_cameraroll').projectDir = new File(rootProject.projectDir, '../node_modules/#react-native-community/cameraroll/android')
How would I fix this issue?
Not sure if this matters at all but here's my package.json
{
"scripts": {
"start": "react-native start",
"android": "react-native run-android",
"ios": "react-native run-ios",
"web": "expo start --web"
},
"dependencies": {
"#apollo/client": "^3.0.0-beta.41",
"#bugsnag/expo": "^6.5.0",
"#eva-design/eva": "^2.0.0-alpha.1",
"#expo/react-native-action-sheet": "^3.6.0",
"#react-native-community/async-storage": "^1.5.1",
"#react-native-community/cameraroll": "^2.0.0",
"#react-native-community/datetimepicker": "2.2.2",
"#react-native-community/masked-view": "0.1.6",
"#react-native-community/netinfo": "^5.7.1",
"#react-native-firebase/admob": "^6.4.0",
"#react-native-firebase/analytics": "^6.4.0",
"#react-native-firebase/app": "^6.4.0",
"#react-navigation/bottom-tabs": "^5.2.4",
"#react-navigation/compat": "^5.1.6",
"#react-navigation/native": "^5.1.3",
"#react-navigation/stack": "^5.2.8",
"#ui-kitten/components": "^5.0.0",
"#ui-kitten/eva-icons": "^5.0.0",
"apollo-cache-inmemory": "^1.6.5",
"apollo-client": "^2.6.8",
"apollo-link": "^1.2.13",
"apollo-link-context": "^1.0.19",
"apollo-link-error": "^1.1.12",
"apollo-upload-client": "^12.1.0",
"axios": "^0.19.0",
"bugsnag-react-native": "^2.23.7",
"expo": "^37.0.0",
"expo-blur": "~8.1.0",
"expo-camera": "~8.2.0",
"expo-constants": "~9.0.0",
"expo-file-system": "~8.1.0",
"expo-image-picker": "~8.1.0",
"expo-localization": "~8.1.0",
"expo-media-library": "~8.1.0",
"expo-notifications": "^0.1.1",
"expo-permissions": "~8.1.0",
"expo-updates": "^0.2.2",
"final-form": "^4.18.2",
"graphql": "^14.6.0",
"graphql-tag": "^2.10.1",
"i18n-js": "^3.3.0",
"lodash": "^4.17.15",
"lottie-ios": "^3.1.3",
"lottie-react-native": "^3.3.2",
"moment": "^2.24.0",
"moment-range": "^4.0.2",
"react": "~16.9.0",
"react-apollo": "^3.1.3",
"react-dom": "16.9.0",
"react-final-form": "^6.3.0",
"react-native": "~0.61.5",
"react-native-appearance": "~0.3.3",
"react-native-calendars": "^1.259.0",
"react-native-circular-progress": "^1.3.0",
"react-native-collapsible": "^1.5.1",
"react-native-drag-sort": "^2.1.1",
"react-native-elements": "^1.2.7",
"react-native-fast-image": "^8.1.5",
"react-native-gesture-handler": "~1.6.0",
"react-native-htmlview": "^0.15.0",
"react-native-iap": "^4.4.9",
"react-native-image-zoom-viewer": "^2.2.27",
"react-native-modal-datetime-picker": "^8.1.1",
"react-native-reanimated": "~1.7.0",
"react-native-safe-area-context": "0.7.3",
"react-native-screens": "~2.2.0",
"react-native-share": "^3.7.0",
"react-native-splash-screen": "^3.2.0",
"react-native-star-rating": "^1.1.0",
"react-native-svg": "^11.0.1",
"react-native-swiper": "^1.6.0-nightly.5",
"react-native-ui-kitten": "^4.3.2",
"react-native-unimodules": "^0.9.0",
"react-native-web": "^0.11.7",
"react-navigation": "^4.3.4",
"react-navigation-stack": "^1.9.0",
"react-navigation-tabs": "^2.5.5",
"react-redux": "^7.1.0",
"redux": "^4.0.4",
"redux-logger": "^3.0.6",
"redux-persist": "^5.10.0",
"styled-components": "^4.3.2",
"victory-native": "^32.0.2"
},
"devDependencies": {
"#babel/core": "~7.9.0",
"babel-jest": "~25.2.6",
"jest": "~25.2.6",
"react-test-renderer": "~16.9.0",
"#types/react": "^16.9.11",
"#types/react-native": "^0.60.22",
"babel-preset-expo": "^8.1.0",
"typescript": "^3.8.3"
},
"resolutions": {
"apollo-client": "2.6.8"
},
"private": true
}
Weird, it seems OK,
remove the .iml and re-import the project.
Let us know if this does the Job!
After Running Copied React-native project:
Caused by: java.lang.Exception: Command config unrecognized. Make sure that you have run npm install and that you are inside a react-native project.
I did npm install but it didn't help.
Package.json
{
"name": "ProjectName",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint .",
"postinstall": "node ./scripts/stfu.js"
},
"dependencies": {
"#invertase/react-native-apple-authentication": "^0.1.1",
"#philly25/react-native-paytm": "^1.0.12",
"#react-native-community/datetimepicker": "^2.2.1",
"#react-native-community/google-signin": "^3.0.4",
"#react-native-community/masked-view": "^0.1.6",
"#react-native-community/netinfo": "^5.3.3",
"#react-native-community/push-notification-ios": "^1.0.6",
"fuse.js": "^3.4.6",
"lottie-react-native": "^3.3.2",
"moment": "^2.24.0",
"react": "16.12.0",
"react-native": "^0.61.5",
"react-native-action-button": "file:./custom_modules/react-native-action-button",
"react-native-android-sms-listener": "^0.7.0",
"react-native-calendar-picker": "file:./custom_modules/react-native-calendar-picker",
"react-native-calendars": "file:./custom_modules/react-native-calendars",
"react-native-carousel-view": "file:./custom_modules/react-native-carousel-view",
"react-native-chart-kit": "file:./custom_modules/react-native-chart-kit",
"react-native-fbsdk": "^1.1.2",
"react-native-fetch-polyfill": "^1.1.3",
"react-native-firebase": "^5.6.0",
"react-native-fs": "^2.16.2",
"react-native-gesture-handler": "^1.5.6",
"react-native-google-drive-api-wrapper": "^1.2.0",
"react-native-google-fit": "^0.9.17",
"react-native-google-signin": "^2.1.1",
"react-native-image-pan-zoom": "^2.1.11",
"react-native-image-picker": "^2.3.0",
"react-native-modal": "^11.5.3",
"react-native-modal-datetime-picker": "^8.1.3",
"react-native-options-menu": "^2.0.2",
"react-native-otp-input": "file:./custom_modules/react-native-otp-input",
"react-native-popup-menu": "^0.15.7",
"react-native-push-notification": "^3.1.9",
"react-native-raw-bottom-sheet": "^2.0.6",
"react-native-reanimated": "^1.7.0",
"react-native-render-html": "^4.2.0",
"react-native-responsive-dimensions": "^3.0.0",
"react-native-restart": "0.0.13",
"react-native-safe-area-context": "^0.6.4",
"react-native-screens": "^2.0.0-beta.1",
"react-native-select-input-ios": "file:./custom_modules/react-native-select-input-ios",
"react-native-simple-toast": "^1.0.0",
"react-native-size-matters": "^0.3.0",
"react-native-slideable-calendar-strip": "file:./custom_modules/react-native-slideable-calendar-strip",
"react-native-snap-carousel": "^3.8.4",
"react-native-svg": "^11.0.1",
"react-native-swipe-gestures": "^1.0.4",
"react-native-swipe-list-view": "^2.1.3",
"react-native-tag-select": "file:./custom_modules/react-native-tag-select",
"react-native-vector-icons": "^6.6.0",
"react-native-webview": "^8.0.6",
"react-navigation": "^4.1.1",
"react-navigation-stack": "^2.1.0",
"react-navigation-tabs": "^2.7.0",
"realm": "^4.0.0-beta.0"
},
"devDependencies": {
"#babel/core": "7.8.4",
"#babel/runtime": "7.8.4",
"#react-native-community/eslint-config": "^0.0.5",
"eslint": "^6.5.1",
"babel-jest": "25.1.0",
"jest": "25.1.0",
"metro-react-native-babel-preset": "0.58.0",
"react-test-renderer": "16.12.0"
},
"jest": {
"preset": "react-native"
},
"rnpm": {
"assets": [
"./app/res/fonts/"
]
}
}
Sharing image:
Running npm install from the project folder PFA.
https://i.stack.imgur.com/YcYvz.png
I have got this error at startup ONLY when testing my react native app on Firebase Test Lab (Robo)
java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libhermes.so
Tested on several devices with different API, it works only on API 21 and 22. Curiously, the app passes all the tests on the Play Store Prelaunch Report.
Actually the most surprising is that I do not use hermes but JSC. The error appears only when I upload an aab (gradlew bundleRelease). It goes well when I upload an universal apk (gradlew assembleRelease).
Here is my package.json
{
"name": "",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "react-native start",
"test": "jest",
"lint": "eslint ."
},
"dependencies": {
"#react-native-community/netinfo": "^4.1.4",
"#redux-offline/redux-offline": "^2.5.2-native.0",
"buffer": "^5.4.2",
"hermes-engine": "^0.2.1",
"jsc-android": "^241213.1.0",
"prop-types": "^15.7.2",
"react": "16.8.6",
"react-native": "0.60.4",
"react-native-animatable": "^1.3.2",
"react-native-bootsplash": "^0.1.1",
"react-native-device-info": "^3.0.1",
"react-native-elements": "^1.1.0",
"react-native-extended-stylesheet": "^0.12.0",
"react-native-firebase": "^5.5.6",
"react-native-fs": "^2.14.1",
"react-native-navigation": "^3.1.2",
"react-native-offline": "^4.3.0",
"react-native-render-html": "^4.1.2",
"react-native-smooth-pincode-input": "^1.0.7",
"react-native-svg": "^9.9.3",
"react-native-svg-charts": "^5.3.0",
"react-native-timer": "^1.3.6",
"react-native-uuid": "^1.4.9",
"react-native-vector-icons": "^6.6.0",
"react-redux": "^7.1.0",
"redux": "^4.0.4",
"redux-logger": "^3.0.6",
"redux-persist": "^5.10.0",
"redux-saga": "^1.0.5"
},
"devDependencies": {
"#babel/core": "7.5.5",
"#babel/runtime": "7.5.5",
"#react-native-community/eslint-config": "0.0.3",
"babel-jest": "24.8.0",
"eslint": "6.1.0",
"jest": "24.8.0",
"metro-react-native-babel-preset": "0.54.1",
"react-test-renderer": "16.8.6",
"redux-devtools-extension": "^2.13.8"
},
"jest": {
"preset": "react-native"
}
}
Thanks for your help.