You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have confirmed the issue is present in the latest version of the rive Flutter package
I have searched the documentation and forums and could not find an answer
I have searched existing issues and this is not a duplicate
Description
Description
Since upgrading to rive: 0.14.11 (from the pre-rive_native architecture), a subset of
our production iOS users gets runtime FFI symbol lookup failures. The same App Store binary
works fine for the majority of users, but for the affected group every Rive call fails:
During RiveNative.init():
Invalid argument(s): Failed to lookup symbol 'init': dlsym(RTLD_DEFAULT, init): symbol not found
ffi_dynamic_library_patch.dart:33 DynamicLibrary.lookup
rive_text_ffi.dart:534 init (rive_native)
rive_text_ffi.dart initFont (rive_native)
rive_text.dart:589 Font.initialize (rive_native)
rive_native.dart:276 RiveNative.init (rive_native)
On any subsequent file load:
RiveFileLoaderException: Failed to load Rive file from asset: assets/animations/onboarding.riv.
Error: Invalid argument(s): Failed to lookup symbol 'loadRiveFile': dlsym(RTLD_DEFAULT, loadRiveFile): symbol not found
Note: the Font.initialize failure inside RiveNative.init() surfaces as an unhandled
async error that escapes a try/catch around await RiveNative.init() — the awaited
future completes normally while the error is thrown from an unawaited internal future.
This makes the failure impossible to handle cleanly on the app side; we had to wrap init
in runZonedGuarded and gate all Rive usage behind a flag to keep production stable.
Impact (Sentry, production App Store builds, last 30 days)
~90–100 unique users affected (a noticeable single-digit % of our iOS user base)
460+ events across the two signatures, first seen the day we shipped the 0.14.11 upgrade
OS skew: ~50% of events on iOS 26.6.x; devices from iPhone 11 up to iPhone 16 Pro Max
100% production, App Store build type — not a local/dev environment issue
Steps to reproduce
We cannot reproduce locally — our own devices and simulators work. The failure affects a
consistent subset of end-user devices with the identical binary, which points at the
prebuilt rive_native static libraries failing to resolve on some device/OS combinations
rather than at app-side integration. We already tried alternative Xcode build settings
(stripping options, linking flags) with no change.
We are a paying Rive customer — the editor subscription and a significant investment in
Rive animations are built into our product. Right now we ship with all animations disabled
behind a fallback for affected users, and we are actively evaluating a migration to Lottie,
which we would prefer to avoid.
Flutter 3.44.2 (stable), engine revision 77e2e94772
Dart 3.12.2 (stable)
rive: 0.14.11 (latest), rive_native: 0.1.11 (transitive)
Xcode 26.2 (17C52) on macOS
Compile mode: release (AOT), production App Store builds
Device
Affected end-user devices (from Sentry, same App Store binary): iPhone 11, iPhone 13 Pro Max, iPhone 16 Pro, iPhone 16 Pro Max (~34% of events), iPhone 17 Pro. Physical devices only. Our own development devices and simulators are NOT affected — we cannot reproduce locally.
OS version
iOS 26.6.1 (builds 23G82 / 23G83) — ~50% of events; remainder on other iOS 26.x versions.
Additional context
First seen in production the day we shipped the rive 0.14.x upgrade (previously on the
pre-rive_native architecture with no such errors); ongoing for 24+ days across multiple
app builds.
The Font.initialize failure inside RiveNative.init() escapes a try/catch around await RiveNative.init() (the error is thrown from an unawaited internal future), so it
cannot be handled cleanly app-side. We currently wrap init in runZonedGuarded and gate
all Rive usage behind a flag, falling back to static UI for affected users.
Submission checklist
riveFlutter packageDescription
Description
Since upgrading to
rive: 0.14.11(from the pre-rive_nativearchitecture), a subset ofour production iOS users gets runtime FFI symbol lookup failures. The same App Store binary
works fine for the majority of users, but for the affected group every Rive call fails:
RiveNative.init():Note: the
Font.initializefailure insideRiveNative.init()surfaces as an unhandledasync error that escapes a
try/catcharoundawait RiveNative.init()— the awaitedfuture completes normally while the error is thrown from an unawaited internal future.
This makes the failure impossible to handle cleanly on the app side; we had to wrap init
in
runZonedGuardedand gate all Rive usage behind a flag to keep production stable.Impact (Sentry, production App Store builds, last 30 days)
Steps to reproduce
We cannot reproduce locally — our own devices and simulators work. The failure affects a
consistent subset of end-user devices with the identical binary, which points at the
prebuilt
rive_nativestatic libraries failing to resolve on some device/OS combinationsrather than at app-side integration. We already tried alternative Xcode build settings
(stripping options, linking flags) with no change.
This looks like the same family as:
dlsym 'init'signature)rive_nativebinaries built with Xcode 16.1 incompatible with theXcode 26 toolchain — same symbols, surfacing at link time instead of runtime)
Context / questions
We are a paying Rive customer — the editor subscription and a significant investment in
Rive animations are built into our product. Right now we ship with all animations disabled
behind a fallback for affected users, and we are actively evaluating a migration to Lottie,
which we would prefer to avoid.
rive_native— that resolves the runtime symbol lookups?Happy to provide full Sentry event JSONs, affected device/OS breakdowns, or test builds.
Info
rive: 0.14.11 (latest at time of filing),rive_nativevia transitive dependencyReproduction steps / code
No response
Upload your reproduction files / stack trace
No response
Source
.riv/.revfileNo response
Screenshots / video
Zrzut ekranu 2026-08-30 o 1.59.43 PM.png
Rive Flutter package version
0.14.11
Flutter version
Flutter 3.44.2 (stable), engine revision 77e2e94772
Dart 3.12.2 (stable)
rive: 0.14.11 (latest), rive_native: 0.1.11 (transitive)
Xcode 26.2 (17C52) on macOS
Compile mode: release (AOT), production App Store builds
Device
Affected end-user devices (from Sentry, same App Store binary): iPhone 11, iPhone 13 Pro Max, iPhone 16 Pro, iPhone 16 Pro Max (~34% of events), iPhone 17 Pro. Physical devices only. Our own development devices and simulators are NOT affected — we cannot reproduce locally.
OS version
iOS 26.6.1 (builds 23G82 / 23G83) — ~50% of events; remainder on other iOS 26.x versions.
Additional context
pre-rive_native architecture with no such errors); ongoing for 24+ days across multiple
app builds.
await RiveNative.init()(the error is thrown from an unawaited internal future), so itcannot be handled cleanly app-side. We currently wrap init in runZonedGuarded and gate
all Rive usage behind a flag, falling back to static UI for affected users.
(prebuilt rive_native binaries vs Xcode 26 toolchain — same symbols at link time).