【发布时间】:2020-09-29 06:29:20
【问题描述】:
请告诉我;如何自动更新安装在客户设备上的 react-native 应用程序?如何发送更新?是否带有推送通知并发送链接以获取更新和安装我的应用程序的新版本还是不好? 请帮助我改进我的应用程序功能。 非常感谢。
【问题讨论】:
标签: android ios reactjs react-native
请告诉我;如何自动更新安装在客户设备上的 react-native 应用程序?如何发送更新?是否带有推送通知并发送链接以获取更新和安装我的应用程序的新版本还是不好? 请帮助我改进我的应用程序功能。 非常感谢。
【问题讨论】:
标签: android ios reactjs react-native
你必须问自己一个问题:are my updates optional?
如果您的更新只是改善了一些用户体验和一些 UI 更改,而您并不关心是否有人仍在使用您的应用的过时版本,这意味着您的更新是可选的。 但是,如果您有一些逻辑或其他事情必须确保每个用户都在使用您的应用程序的最新版本,这意味着您的更新不再是可选的。
你可能会问:why answer to question above matters?
关键是,如果您的更新是必须的而不是可选的,则您必须实施一个流程来阻止用户在应用程序启动中取得进一步进展,除非用户去更新应用程序。让我提供一个示例,认为您没有使用任何 store 来发布您的应用程序,而您只有一个 apk。假设有一个 API(在 back-end 中)提供当前版本的应用程序,例如 v1.0。在应用程序中存储其版本,在应用程序启动时比较这两个值。如果它们不相等,您只需打开一个 Modal 显示一条消息:Your app is not up to date, in order to update your app click on link below 然后您提供一个链接到某个地方以下载和更新应用程序。
它可以是直接指向您的apk 的链接,也可以在store 中打开您的应用页面。
现在让我们回答:How to publish my app updates?。
如果您在store 中发布您的应用程序,例如Appstore - Playstore,您只需在那里更新您的应用程序,然后由stores 处理其余部分。用户可以进来store 并更新应用程序。我想我们都定期为手机上的应用程序做这件事。请记住,如上所述,让您的用户必须来这里进行更新或让它成为可选是您的选择。
或者你可以使用Code-Push。
CodePush 是支持 Cordova 和 React Native 的云服务 开发人员直接向其用户部署移动应用更新 设备
它的github链接:https://github.com/microsoft/react-native-code-push
作为一种体验,如果你能把它正确地放在你的应用程序中,更新会非常愉快,尽管它有一些限制(例如它只能发布 js 部分的代码,而不是原生代码)
【讨论】:
您可以使用Microsoft code push 进行自动更新,而无需通过 PlayStore 或 AppStore 实际更新应用
这里有一个很棒的article,介绍了 Microsoft 代码推送如何在 Myntra 等真实应用中工作。
【讨论】:
如果您使用 expo,则可以使用无线更新
【讨论】: