How to debug react-native app using reanimated and firebase - react-native

native developers. I have been developing and maintaining a react-native app for the past four years now. Now I have come to a point where I no longer know a way to debug my app. I am using recent versions of both react-native-reanimated and #react-native-firebase for stability and feature requirements. Both of these libraries have limitations on debugging.
react-native-reanimated uses Turbo Modules and breaks debugging react-native with chrome tools and the great react-native-debugger.
#react-native-firebase above v15.x now requires us to have use_frameworks! in our Podfile which breaks Flipper debugging.
Without these options for debugging, what is left? Is anyone in the same situation and has a solution to debug their react-native app and view their redux state?
I appreciate the help.
My current versions in my app:
"#react-native-firebase/app": "15.5.0",
"react": "18.1.0",
"react-native": "0.70.5",
"react-native-reanimated": "^2.13.0",

Related

Is there any package in react native that works for background services in android 12?

I want to fetch location while the app is in background I've tried some known packages for this to work but those packages aren't working.
Is there any other packages to use or any solutions.
I've used react native's native package which is working on below android 11 but not working for android 12 so is there any solution or alternatives for this ??
I've used packages like:-
"#supersami/rn-foreground-service": "^1.1.1",
"react-native-background-actions": "^2.6.7",
"react-native-background-task": "^0.2.1",
"react-native-location": "^2.5.0"

In latest react-native version 'jitsi' meet call buttons are not working in android

I have integrated react-native jitsi sdk in my application. In ios it is working fine, but in android no buttons are working of meeting conference. Can anyone help me how can I fix this issue ?
Configurations :
"react-native": "0.67.2",
"react-native-jitsi-meet": "^2.2.0",

react native for web: expo-camera failed to scan qrcode

I am developing a web app with react native for web, and I want to scan qrcode but it does not work, without errors.
I put the codes on snack, ran it on mobile with Expo Go, it worked perfectly. However, when I published it on github web, and open it with mobile browser (iOS Safari), the camera worked normally, but no qrcode was read (just no reponse when I put a qrcode inside).
Code info:
I referred sample code on expo-camera and expo-barcode-scanner. Since expo-barcode-scanner does not support web, I imported expo-camera only.
Version info:
"expo": "~42.0.1"
"expo-camera": "~11.2.2"
"expo-status-bar": "~1.0.4"
"react": "16.13.1"
"react-dom": "16.13.1"
"react-native": "https://github.com/expo/react-native/archive/sdk-42.0.0.tar.gz"
"react-native-web": "~0.13.12"
Also, I checked this issue, and tried the followings:
open /node_modules/expo-camera/package.json, set "#koale/useworker" to "4.0.1"
run npm i under root dir
open /node_modules/expo-camera/node_modules/#koale/useworker/package.json, confirmed that the version is 4.0.1
But it still did not work.
I feel confused now, did I take wrong solutions? Is there any workarounds?
Any suggestions would be appreciated.

Cannot Convert Existing React Native to Expo: error with nativeVersion.major

Just downloaded the newest version of Expo XDE(2.20.1) and trying to convert an existing react native project into it. I followed precisely these steps, and when opening the app in Expo client on a real device, I got an error saying:
undefined is not an object (evaluating 'nativeVersion.major')
The problem happens both on Android and iOS.
Seems expo has a strict requirement of react/react-native versions, but unfortunately, I cannot find the version requirement list.
My current dependencies (which are quite up-to-date) are:
"react": "16.0.0",
"react-native": "0.49.3"
So, does this error indeed came from version conflicts? And if so, how do I solve the problem?
Your JS dependencies need to match the native code. With Expo SDK 21, which is based off of React Native 0.48, you can either use (recommended):
"react": "16.0.0-alpha.12",
"react-native": "https://github.com/expo/react-native/archive/sdk-21.0.2.tar.gz",
or:
"react": "16.0.0-alpha.12",
"react-native": "^0.48.4",
It's important you are careful with the versions when you update your dependencies. The upcoming React Native 0.49 (supported with Expo SDK 22) needs to use React 16.0.0-beta.5.
It might be easiest to create a new Expo project from scratch, then copy over your components. I've done this several times myself, and it's far easier than fighting whatever edge condition has affected you.
Remove your iOS build (./app/ios/build) folder and re-build.

Converting Existing React Native Projects to Expo

I'm considering building mobile apps in React Native using Expo and I noticed under FAQ that existing React Native projects can be converted to Expo.
What exactly are we converting? I really like staying as pure and clean as possible without too many abstraction layers in the middle which can obscure my ability to understand what's really happening for things to work in the app.
I'd appreciate a bit more clarification about what's really happening in the conversion process and what Expo is adding to the existing project.
This topic is covered in the Expo XDE readme.
However, we didn't get it working and decided to port our code into the default Expo app (Edit: after hitting a lot of issues porting our app to Expo, we decided to revert to vanilla RN).
There are at least a few required steps missing from the documentation:
Create exp.json file
Update React and React Native libraries to the versions required by Exponent
"react": "16.0.0-alpha.6",
"react-native": "https://github.com/expo/react-native/archive/sdk-16.0.0.tar.gz",
We summarized on our blog why we gave up on Expo in its current form.