从Play Store下载时未加载应用程序,但安装生成的APK工作正常



问题

我已经在Play Store上发布了最新版本的应用程序。

  • 如果我下载并安装生成的APK,它可以正常工作
  • 但如果我从Play Store下载相同的版本,应用程序不会加载或崩溃。在发布时,我上传了Android应用程序包,而不是APK,也没有在Play控制台上上传调试符号
  • 我试过在物理设备和Android模拟器上运行该应用程序(包括APK和Play Store(
  • 由于应用程序在调试模式下运行良好,并且通过安装APK(在iOS上运行(,我认为这个问题与反应代码无关,而是与一些配置问题有关
  • 采用React Native 0.60.4构建

日志

以下是在Android Studio Simulator中运行从Play Store下载的应用程序时来自logcat的日志。在执行停止的最后有几个错误。似乎每当它在任何预定位置都找不到本机依赖项时,就会显示错误。

即使在运行APK时,我也会得到相同的日志,但执行会继续并完成,以启动应用程序并从服务器获取数据。

> 2020-08-17 22:39:02.997 4719-4719/? D/SoLoader: libyoga.so not found on /data/data/com.abc.testapp/lib-main
> 2020-08-17 22:39:02.997 4719-4719/? D/SoLoader: libyoga.so not found on /data/data/com.abc.testapp/lib-0
> 2020-08-17 22:39:02.997 4719-4719/? D/SoLoader: libyoga.so found on /data/data/com.abc.testapp/lib-1
> 2020-08-17 22:39:03.002 4719-4719/? D/SoLoader: libjsinspector.so not found on /data/data/com.abc.testapp/lib-main
> 2020-08-17 22:39:03.002 4719-4719/? D/SoLoader: libjsinspector.so not found on /data/data/com.abc.testapp/lib-0
> 2020-08-17 22:39:03.002 4719-4719/? D/SoLoader: libjsinspector.so found on /data/data/com.abc.testapp/lib-1
> 2020-08-17 22:39:03.003 4719-4719/? D/SoLoader: libfolly_json.so not found on /data/data/com.abc.testapp/lib-main
> 2020-08-17 22:39:03.003 4719-4719/? D/SoLoader: libfolly_json.so not found on /data/data/com.abc.testapp/lib-0
> 2020-08-17 22:39:03.003 4719-4719/? D/SoLoader: libfolly_json.so found on /data/data/com.abc.testapp/lib-1
> 2020-08-17 22:39:03.011 4719-4719/? D/SoLoader: libjsc.so not found on /data/data/com.abc.testapp/lib-main
> 2020-08-17 22:39:03.011 4719-4719/? D/SoLoader: libjsc.so not found on /data/data/com.abc.testapp/lib-0
> 2020-08-17 22:39:03.011 4719-4719/? D/SoLoader: libjsc.so not found on /data/data/com.abc.testapp/lib-1
> 2020-08-17 22:39:03.011 4719-4719/? D/SoLoader: libjsc.so not found on /data/data/com.abc.testapp/lib-2
> 2020-08-17 22:39:03.011 4719-4719/? D/SoLoader: libjsc.so not found on /data/app/com.abc.testapp-ue_qPUdXT8TbbZBF3aKjsA==/lib/x86
> 2020-08-17 22:39:02.977 4719-4719/? W/abc.testapp: type=1400 audit(0.0:559): avc: granted { execute } for path="/data/data/com.abc.testapp/lib-1/libfb.so" dev="vdc" ino=147513 scontext=u:r:untrusted_app_27:s0:c146,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c146,c256,c512,c768 tclass=file
> 2020-08-17 22:39:02.977 4719-4719/? W/abc.testapp: type=1400 audit(0.0:560): avc: granted { execute } for path="/data/data/com.abc.testapp/lib-1/libglog.so" dev="vdc" ino=147516 scontext=u:r:untrusted_app_27:s0:c146,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c146,c256,c512,c768 tclass=file
> 2020-08-17 22:39:02.977 4719-4719/? W/abc.testapp: type=1400 audit(0.0:561): avc: granted { execute } for path="/data/data/com.abc.testapp/lib-1/libglog_init.so" dev="vdc" ino=147518 scontext=u:r:untrusted_app_27:s0:c146,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c146,c256,c512,c768 tclass=file
> 2020-08-17 22:39:03.381 1814-1814/? E/Layer: [Surface(name=AppWindowToken{ab7a8d4 token=Token{81bde27 ActivityRecord{9318e6 u0 com.abc.testapp/.MainActivity t205}}})/@0x356d6b1 - animation-leash#0] No local sync point found
> 2020-08-17 22:39:03.381 1814-1814/? E/Layer: [Surface(name=AppWindowToken{ab7a8d4 token=Token{81bde27 ActivityRecord{9318e6 u0 com.abc.testapp/.MainActivity t205}}})/@0x356d6b1 - animation-leash#0] No local sync point found

我调查过的内容:

  • 修复上面显示的错误

    • 我试着遵循这个答案https://stackoverflow.com/a/56778060/12246335但它开始生产尺寸是以前两倍的APK,应用程序不断崩溃。

    • 这个答案https://stackoverflow.com/a/59626013/12246335建议启用明文流量。我浏览了文档,但看不出这会有什么用处,还提到了添加此选项时的安全问题。

    • AndroidManifest.xml中的配置显示,当前cleartext流量是为调试模式启用的,而不是为发布模式启用的。

  • 更新gradle和gradle插件版本

    • 我尝试过将gradle和插件版本更新到最新版本。APK构建和运行良好,但日志中仍然存在上述错误。因此,我觉得Play Store发布的版本也不会有什么不同,并将因上述错误而停止执行

如有任何帮助/建议,我们将不胜感激。非常感谢。

我找到了修复程序。

事实证明,问题出在启用爱马仕之后。

https://github.com/facebook/react-native/issues/26400#issuecomment-539395814

上面的答案帮我搞定了。

最新更新