iOS 是否有像 Android 一样的应用内更新功能?

Suk*_*ngh 18 iphone android ios firebase reactjs

我为 Android 和 iOS 开发了一个移动应用程序。现在每周我们都会发布 2 个更新。大多数时候,Android 和 iOS 用户会停止应用程序的自动更新。但是,如果有重要更新或错误修复或新功能,那么我们必须要求用户更新应用程序以获得更好的可用性。为此我发现 Android 有In App Updates API。它说,我引用

\n\n
\n

让您的用户\xe2\x80\x99 设备上的应用程序保持最新状态,使他们能够尝试新功能,并从性能改进和错误修复中受益。尽管某些用户在其设备连接到不按流量计费的连接时启用后台更新,但可能需要提醒其他用户进行更新。应用内更新是 Play Core 库的一项功能,它引入了新的请求流来提示活跃用户更新您的应用。

\n
\n\n

但是我无法找到iOS的相同或类似功能。我不确定推送通知是否可以做同样的事情。请指教。

\n

Mau*_*lik 10

不可以,如果用户没有设置自动更新,则无法更新或下载应用程序。

但你可以尝试另一种方式。就像当应用程序打开或进入前台时,调用 API/Web 服务来检查是否有基于应用程序当前版本的重要更新发布?根据是/否响应,向用户显示有新更新可用的警报,然后单击“确定”,将他们带到 Apple 商店。


Mic*_*gan 6

不,iOS 没有 Android 所具有的自动更新功能。推送通知对此效果不佳,因为 1) 用户可能不允许推送通知,2) 推送不知道用户当前使用的版本。

如果您的应用程序调用后端 Web API 或 Web 服务,那么应用程序调用 Web 服务中的方法(例如 getVersion())非常简单。Web 服务读取配置文件中设置的当前版本并将其返回给应用程序。它还可能返回一个标志,表示 Mandatory = Y 或 N。

在您的应用程序中,您每次启动时都会调用 getVersion() 方法。如果应用程序的版本号小于 getVersion() 返回的版本,则检查强制标志是否设置为“Y”。如果是这样,您会显示一个对话框,提示您需要强制更新才能使用该应用程序,您想立即安装吗?如果是,您将它们导航到 iTunes 应用程序商店中的页面,然后退出该应用程序。如果不是,则退出该应用程序。他们每次尝试运行应用程序时都会收到相同的消息,直到更新为止。

如果强制标志设置为“N”,您将显示一个对话框,提示有更新版本可用,您想立即安装吗?如果是,则将它们导航到 iTunes 应用程序商店中的页面,然后退出应用程序。如果否,您允许应用程序打开并继续。但是,每次应用程序打开时都会再次提示用户,直到更新为止。

如果将平台传递给 getVersion(String platform) 方法,然后读取 android_version 或 ios_version 的配置文件(因为平台之间的版本号可能不同),则可以使 getVersion() 方法同时适用于 iOS 和 Android。关于平台参数中传递的内容。