美文网首页
React-Native Release包闪退,Debug包正常

React-Native Release包闪退,Debug包正常

作者: vincent涵 | 来源:发表于2022-04-03 13:35 被阅读0次

    关键信息:
    1、Unhandled JS Exception: Invariant Violation: Module AppRegistry is not a registered callable module (calling runApplication),
    2、Debug正常,Release包闪退。Android/iOS相同
    3、项目有metro分包打包
    4、新引入了一个第三方,新建一个项目使用该第三方没问题

    结论/原因:moduleId重复导致

    1、metro分包,固定了各个module的moduleId(比如我们的项目是login模块1000,main模块2000等等),各模块内引用的第三方库模块在本模块基础上自增处理,比如1001,1002
    2、引入第三方前没问题(自增模块比较少,没超过1000);引入第三方后,超过了1000,比如出现了2000,与main模块冲突,闪退
    3、debug模式因为不涉及分包,所以无影响

    处理方式

    临时处理为将主要模块改为10000、20000等等,后续可修改自增逻辑

    参考资料:

    React Native 拆包实践4 - createModuleIdFactory

    相关文章

      网友评论

          本文标题:React-Native Release包闪退,Debug包正常

          本文链接:https://www.haomeiwen.com/subject/yyefsrtx.html