【问题标题】:CodePush updating a newly installed appCodePush 更新新安装的应用程序
【发布时间】:2017-10-06 19:57:34
【问题描述】:

我正在为我的应用设置代码推送,但发现了一个奇怪的行为。我编译了暂存应用程序并将其安装在 android 手机上,然后通过 code-push 推送了一些更新,这些更新下载得很好。

我没有在 android/app/build.gradle 中更改我的 apk 版本,因为我是直接从 mac 安装到手机以在暂存模式下进行测试,它会覆盖以前的安装。

我会跟踪 bugsnag 的 bundle-id,最后一个用于 code-push 的 bundle-id 是 1.6.5。经过更多修改后,我最终创建了一个新的 apk 用于安装,现在 bundle-id 是 1.6.7。我还没有将其推送到代码推送。一旦应用程序运行,它就会要求更新,如果我更新,我会从 code-push 获取旧包(bundle-id 1.6.5)。无法理解为什么我会得到旧代码作为更新。我没有正确设置某些参数吗?

反应原生:0.44.1

react-native-code-push: 2.1.1-beta

【问题讨论】:

    标签: react-native react-native-android code-push react-native-code-push


    【解决方案1】:

    您必须将包推送到代码推送并使其可用于 1.6.7 版本,以便它下载新包而不是旧包。 您可以强制发布并告诉代码推送下载它并在下一个简历中更新它,就像这样 codePush({ checkFrequency: codePush.CheckFrequency.ON_APP_RESUME, installMode: codePush.InstallMode.ON_NEXT_RESUME })

    【讨论】:

    • 据我了解,如果我正在编译一个新的二进制文件,我不应该将更新推送到 codepush,因为新的二进制文件具有最新的代码,并且 codepush 在任何情况下都不应该推送旧代码.我认为这与应用程序版本相同且未更新有关,因为我在暂存时进行本地测试而不更改应用程序版本,因此 codepush 检测到旧应用程序版本有更新,在本示例中其 code-bundle-id 为 1.6 .5 即使最新的 code-bundle-id 是 1.6.7 但应用程序版本是 1.5.0(在 build.gradle 中设置的版本代码)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多