Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fatal Exception: java.lang.IllegalArgumentException minFrame (318.0) must be <= maxFrame (71.0) #1016

Open
Brittognanaraj opened this issue Apr 25, 2023 · 9 comments

Comments

@Brittognanaraj
Copy link

com.airbnb.lottie.utils.LottieValueAnimator.setMinAndMaxFrames (LottieValueAnimator.java:89)
com.airbnb.lottie.utils.LottieValueAnimator.setMinFrame (LottieValueAnimator.java:5)
com.airbnb.lottie.LottieDrawable.setMinFrame (LottieDrawable.java:17)
com.airbnb.lottie.LottieAnimationView.setMinFrame (LottieAnimationView.java:2)
com.withpersona.sdk2.inquiry.internal.InquiryInitializingRunner. (InquiryInitializingRunner.java:101)
com.withpersona.sdk2.inquiry.internal.InquiryInitializingRunner$Companion$1.invoke (InquiryInitializingRunner.java:7)
com.withpersona.sdk2.inquiry.internal.InquiryInitializingRunner$Companion$1.invoke (InquiryInitializingRunner.java:2)
com.squareup.workflow1.ui.LayoutRunnerViewFactory.buildView (LayoutRunnerViewFactory.java:33)
com.withpersona.sdk2.inquiry.internal.InquiryInitializingRunner$Companion.buildView (InquiryInitializingRunner.java:17)
com.withpersona.sdk2.inquiry.internal.InquiryInitializingRunner$Companion.buildView (InquiryInitializingRunner.java:2)
com.squareup.workflow1.ui.ViewRegistryKt.buildView (ViewRegistry.kt:24)
com.squareup.workflow1.ui.DecorativeViewFactory.buildView (DecorativeViewFactory.java:46)
com.squareup.workflow1.ui.NamedViewFactory.buildView (NamedViewFactory.java:17)
com.squareup.workflow1.ui.NamedViewFactory.buildView (NamedViewFactory.java:2)
com.squareup.workflow1.ui.ViewRegistryKt.buildView (ViewRegistry.kt:24)
com.withpersona.sdk2.inquiry.shared.ui.ScreenWithTransitionContainer.update (ScreenWithTransitionContainer.java:72)
com.withpersona.sdk2.inquiry.shared.ui.ScreenWithTransitionContainer$Companion$1$1$1.invoke (ScreenWithTransitionContainer.java:14)
com.withpersona.sdk2.inquiry.shared.ui.ScreenWithTransitionContainer$Companion$1$1$1.invoke (ScreenWithTransitionContainer.java:4)
com.squareup.workflow1.ui.ViewShowRenderingKt.showRendering (ViewShowRendering.kt:45)
com.squareup.workflow1.ui.WorkflowViewState$New$1.invoke (WorkflowViewState.java:32)
com.squareup.workflow1.ui.WorkflowViewState$New$1.invoke (WorkflowViewState.java:2)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1$1.invoke (ViewRegistry.kt:4)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1$1.invoke (ViewRegistry.kt)
com.squareup.workflow1.ui.WorkflowViewStub.update$lambda-4 (WorkflowViewStub.java:17)
com.squareup.workflow1.ui.WorkflowViewStub.$r8$lambda$6ZAouUTIcxwvbZSKhRRqVUBDOWg (WorkflowViewStub.java)
com.squareup.workflow1.ui.WorkflowViewStub$$InternalSyntheticLambda$0$f151fdadd4eec6c9f7ae9d2c64f135758b2c80fd55049597fa0554ff1453ac67$0.startView (WorkflowViewStub.java)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1.invoke (ViewRegistry.kt:14)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1.invoke (ViewRegistry.kt:2)
com.squareup.workflow1.ui.ViewShowRenderingKt.start (ViewShowRendering.kt:33)
com.squareup.workflow1.ui.WorkflowViewStub.update (WorkflowViewStub.java:81)
com.squareup.workflow1.ui.modal.ModalContainer.update (ModalContainer.java:16)
com.withpersona.sdk2.inquiry.modal.CustomModalViewContainer.access$update (CustomModalViewContainer.java)
com.withpersona.sdk2.inquiry.modal.CustomModalViewContainer$Companion$1$1$1.invoke (CustomModalViewContainer.java:14)
com.withpersona.sdk2.inquiry.modal.CustomModalViewContainer$Companion$1$1$1.invoke (CustomModalViewContainer.java:4)
com.squareup.workflow1.ui.ViewShowRenderingKt.showRendering (ViewShowRendering.kt:45)
com.squareup.workflow1.ui.WorkflowViewState$New$1.invoke (WorkflowViewState.java:32)
com.squareup.workflow1.ui.WorkflowViewState$New$1.invoke (WorkflowViewState.java:2)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1$1.invoke (ViewRegistry.kt:4)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1$1.invoke (ViewRegistry.kt)
com.squareup.workflow1.ui.WorkflowViewStub.update$lambda-4 (WorkflowViewStub.java:17)
com.squareup.workflow1.ui.WorkflowViewStub.$r8$lambda$6ZAouUTIcxwvbZSKhRRqVUBDOWg (WorkflowViewStub.java)
com.squareup.workflow1.ui.WorkflowViewStub$$InternalSyntheticLambda$0$f151fdadd4eec6c9f7ae9d2c64f135758b2c80fd55049597fa0554ff1453ac67$0.startView (WorkflowViewStub.java)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1.invoke (ViewRegistry.kt:14)
com.squareup.workflow1.ui.ViewRegistryKt$buildView$1$2$1.invoke (ViewRegistry.kt:2)
com.squareup.workflow1.ui.ViewShowRenderingKt.start (ViewShowRendering.kt:33)
com.squareup.workflow1.ui.WorkflowViewStub.update (WorkflowViewStub.java:81)
com.squareup.workflow1.ui.WorkflowLayout.update (WorkflowLayout.java:12)
com.squareup.workflow1.ui.WorkflowLayout$start$2.invoke (WorkflowLayout.java:9)
com.squareup.workflow1.ui.WorkflowLayout$start$2.invoke (WorkflowLayout.java)
com.squareup.workflow1.ui.WorkflowLayout$takeWhileAttached$listener$1$onViewAttachedToWindow$1.invokeSuspend (WorkflowLayout.java:14)
com.squareup.workflow1.ui.WorkflowLayout$takeWhileAttached$listener$1$onViewAttachedToWindow$1.invoke (WorkflowLayout.java:8)
com.squareup.workflow1.ui.WorkflowLayout$takeWhileAttached$listener$1$onViewAttachedToWindow$1.invoke (WorkflowLayout.java:2)
kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (FlowKt__Transform.kt:79)

kotlinx.coroutines.flow.FlowKt.launchIn (Flow.kt)
com.squareup.workflow1.ui.WorkflowLayout$takeWhileAttached$listener$1.onViewAttachedToWindow (WorkflowLayout.java:16)
android.view.View.dispatchAttachedToWindow (View.java:21319)

com.android.internal.os.ZygoteInit.main (ZygoteInit.java:936)

Versions

You can get this information from executing npm version.

@TomCorvus
Copy link

Give us more information and maybe someone will help you.

@Brittognanaraj
Copy link
Author

@TomCorvus I got this crash reported in my firebase console. I don't have much information about. I will try to give more information about this.

@TomCorvus
Copy link

You can tell us what version of RN, LRN you're using. On which OS. Which version. When the crash appears. At the start or when you try to display an animation. Which animation. An example of code. Did you try to reproduce the problem.

@Brittognanaraj
Copy link
Author

Brittognanaraj commented Apr 29, 2023

@TomCorvus Please find the version below. And I am unable reproduce this crash in regression. But In production, this is happening in random devices.
{
npm: '9.6.4',
node: '20.0.0',
acorn: '8.8.2',
ada: '2.0.0',
ares: '1.19.0',
brotli: '1.0.9',
cldr: '42.0',
icu: '72.1',
llhttp: '8.1.0',
modules: '115',
napi: '8',
nghttp2: '1.52.0',
openssl: '1.1.1t',
simdutf: '3.2.7',
tz: '2022e',
undici: '5.21.0',
unicode: '15.0',
uv: '1.44.2',
uvwasi: '0.0.16',
v8: '11.3.244.4-node.3',
zlib: '1.2.11'
}

Crash happened in
Android 11 Moto G Stylus (2021)
Android 13 Pixel 6, OnePlus 9, OnePlus 7

@TomCorvus
Copy link

Sorry @Brittognanaraj but I don't see your RN version or your LRN version ? Can you give us a piece of code you use?
Thanks

@Brittognanaraj
Copy link
Author

@TomCorvus
"react": "17.0.2",
"react-native": "0.68.3",

@TomCorvus
Copy link

TomCorvus commented Apr 30, 2023

Please read my full comment. Need your lottie-react-native version and piece of code you use. When the crash appears?
If you don't give us these minimal information, you can close your issue, nobody will help you.

@Brittognanaraj
Copy link
Author

Brittognanaraj commented Apr 30, 2023

@TomCorvus Sorry I am new to react-native. I didn't understand "LRN version". Now I understood. Thanks for educated me and kindly help me on this below issue
"react": "17.0.2",
"react-native": "0.68.3"
"lottie-ios": "3.2.3",
"lottie-react-native": "5.1.3",

Piece of code :

  <LottieView
        ref={lottieRef}
        style={styles.loading}
        source={require('./loading.json')}
        progress={1}
        autoPlay
        loop
      />

And please find here the full code.

import React,{useEffect, useRef} from 'react';
import {View, StyleSheet, AppState} from 'react-native';
import LottieView from 'lottie-react-native';

import colors from '../../styles/colors';

const LottieLoader = () => {
  const lottieRef = useRef();

  useEffect(() => {
    const subscription = AppState.addEventListener('change', handleAppStateChange);
    return () => {
     subscription.remove();
    };
  }, []);

  function handleAppStateChange(nextAppState) {
    if (nextAppState === 'active'&& lottieRef.current) {
      lottieRef.current.play();
    }
  }
  return (
    <View style={styles.container}>
      <LottieView
        ref={lottieRef}
        style={styles.loading}
        source={require('./loading.json')}
        progress={1}
        autoPlay
        loop
      />
    </View>
  );
};

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: colors.primaryBackgroundColor,
  },
  indicator: {
    alignItems: 'center',
    justifyContent: 'center',
  },
  loading: {
    width: 100,
    height: 100,
  },
});

export default LottieLoader;


@TomCorvus
Copy link

Thanks @Brittognanaraj, do you have the same problem with another animation? Try with an animation on https://lottiefiles.com
If you remove progress prop, you have the same issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants