我一直在构建一个应用程序的反应-本地人。最初它是一个0.60项目,在开发过程中,我对它进行了几次升级,而不是0.63.4。
我注意到,当在Android上运行发布版本时,这个应用程序感觉非常慢。感觉好像把手机的记忆都吃光了。当我在Android中运行它并附加一个分析器时,所有这些看起来都是正常的(+- 15%的CPU使用率,128 15的内存使用量)。
我尝试将Hermes添加到我的应用程序中,以查看它是否会产生任何不同,但一旦我将enableHermes参数设置为true、lean&build,我的应用程序一启动就会崩溃,没有任何错误消息(在成功构建之后)。
然后我去了React原住民的文档,其中一个警告说,每个Hermes版本是针对一个特定的RN版本。好吧,我想。Reactive0.63.x有Hermes版本0.5.3。每当我访问我的yarn.lock并设置hermes-engine "0.5.3"时,它都会说它找不到它,并问我要安装哪个版本。
我很困惑。
问题什么版本的Hermes适合于ReactiveNative0.63.4,以及如何适当地添加它以防止我现在遇到的无错误消息崩溃?
当更新通过Android运行我的应用程序时,我在运行日志中看到它在打开和崩溃之前给出了这个消息:
E/SoLoader: couldn't find DSO to load: librealmreact.so caused by: dlopen failed: library "libjsc.so" not found result: 0
E/AndroidRuntime: FATAL EXCEPTION: create_react_context
Process: com.dartscores, PID: 14692
java.lang.UnsatisfiedLinkError: couldn't find DSO to load: librealmreact.so caused by: dlopen failed: library "libjsc.so" not found result: 0
at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:896)
at com.facebook.soloader.SoLoader.loadLibraryBySoNameImpl(SoLoader.java:725)
at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:649)
at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:629)
at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:577)
at io.realm.react.RealmReactModule.<clinit>(RealmReactModule.java:56)
at io.realm.react.RealmReactPackage.createNativeModules(RealmReactPackage.java:31)
at com.facebook.react.ReactPackageHelper.getNativeModuleIterator(ReactPackageHelper.java:42)
at com.facebook.react.NativeModuleRegistryBuilder.processPackage(NativeModuleRegistryBuilder.java:42)
at com.facebook.react.ReactInstanceManager.processPackage(ReactInstanceManager.java:1347)
at com.facebook.react.ReactInstanceManager.processPackages(ReactInstanceManager.java:1318)
at com.facebook.react.ReactInstanceManager.createReactContext(ReactInstanceManager.java:1225)
at com.facebook.react.ReactInstanceManager.access$1100(ReactInstanceManager.java:131)
at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:1016)
at java.lang.Thread.run(Thread.java:784)这表明加载我在应用程序中使用的领域依赖项有什么问题吗?当我再次将enableHermes设置为false时,我没有收到这个消息,而且一切看起来都很好(但是性能很差)。
在使用Hermes时,有谁有过图书馆无法加载的经验?
如有任何指导,将不胜感激。
发布于 2021-02-17 09:15:22
事实证明,正如所述的这里一样,王国不支持Hermes,而且团队正在努力完成它。好像我需要换数据库..。
https://stackoverflow.com/questions/66223645
复制相似问题