rive-react-native icon indicating copy to clipboard operation
rive-react-native copied to clipboard

App crashes on IOS for RN = 0.75.4

Open kcadi opened this issue 1 year ago • 6 comments

App crashes on IOS , works fine on Android for RN = 0.75.4 Screenshot 2024-10-16 at 6 41 09 PM

There may be some error in the package itself , as I even commented out all the import statements to check if this issue is replicated , but the issue still lies

kcadi avatar Oct 16 '24 13:10 kcadi

I am facing the same issue in react-native 0.75.3 and rive-react-native 7.3.0

imsankalp avatar Oct 16 '24 19:10 imsankalp

@kcadi @imsankalp This has been brought up internally and is currently being discussed. No update to share at this exact time.

dskuza avatar Oct 17 '24 16:10 dskuza

@dskuza I've reported the same issue on https://github.com/rive-app/rive-ios/issues/345 with a bit of added context

It looks like a symbol collision between RiveRuntime's Yoga and React Native's Yoga occuring when using static linkage. I thought namespacing Yoga in RiveRuntime might help, what do you think?

alextoudic avatar Oct 20 '24 18:10 alextoudic

As a workaround, downgrading to rive-react-native: 7.0.5 work on my side 👍

PierreCapo avatar Oct 22 '24 10:10 PierreCapo

As a workaround, downgrading to rive-react-native: 7.0.5 work on my side 👍

Its works on the emulator , but crashes in production

kcadi avatar Oct 24 '24 09:10 kcadi

  • 1, also happening in version 8.0.0

hamdij0maa avatar Oct 30 '24 10:10 hamdij0maa

Same with:

{
   "expo": "~52.0.0-preview.19",
   "react-native": "0.76.1",
   "rive-react-native": "^8.0.0"
}

guval-gh avatar Nov 06 '24 17:11 guval-gh

This should be resolved with 8.2.0. Please let me know if it doesn't work for you and we'll reopen this issue.

Troubleshooting

  • Remove node_modules and ios/Pods
  • Remove any reference to Rive in package-lock.json or yarn.lock and run yarn or npm i again
  • Remove any reference to Rive in the ios/Podfile.lock and rerun Pod install

lancesnider avatar Nov 27 '24 19:11 lancesnider

I have a repo containing a minimal repro here: https://github.com/leemhenson/rive-firebase-yoga-issue

For me, it still fails in exactly the same way as shown in the original screenshot above. You can try it yourself with:

npm install
expo prebuild --clean
xed ios
npm run start

ios/Podfile.lock afterwards shows:

PODS:
  ...
  - rive-react-native (8.2.0):
    - React-Core
    - RiveRuntime (= 6.3.7)
  - RiveRuntime (6.3.7)
  ...
  
DEPENDENCIES:
  ...
  - rive-react-native (from `../node_modules/rive-react-native`)
  ...
  
SPEC REPOS:
  trunk:
    ...
    - RiveRuntime
    ...
    
EXTERNAL SOURCES:
  ...
  rive-react-native:
    :path: "../node_modules/rive-react-native"  
  ...

SPEC CHECKSUMS:
  ...
  rive-react-native: 0b3d18dcf51499918821bfc2ba01a5e7af9ef434
  RiveRuntime: dbcfe1594ef0b03f0bac0952ccb31dd2ed39740a
  ...

It's unclear to me from previous discussions on this topic whether we are now expected to modify our Podfiles to include:

use_frameworks! :linkage => :static

pod 'FirebaseCore', :modular_headers => true
pod 'GoogleUtilities', :modular_headers => true

In my repro I have included a custom expo plugin in my app.json which does, but whether it's in the plugins list or not makes no difference to the outcome.

leemhenson avatar Nov 28 '24 10:11 leemhenson

Sorry, I was wrong about it being fixed in 8.2.0. I just pushed the button to release 8.3. @leemhenson It sounds like it's working for you now? Please let me know if you run into any issues with this.

lancesnider avatar Dec 06 '24 19:12 lancesnider