蒲公英开发者服务平台致力于提供优秀的开发者上下游服务,解决开发者在整个开发者生命周期中的各个需求。
扫码关注
蒲公英微信公众号
获取最新动态、官方福利、优惠活动等信息
蒲公英文档中心
蒲公英的 iOS SDK 和 Android SDK,都支持自动版本更新的功能,本文说明了蒲公英 SDK 自动更新的机制。
阅读本文,需要先明白 App 的版本号机制,以及蒲公英的自增 Build 版本号。建议大家首先阅读 显示正确的 Build 版本号 ,来明确 App 本身的版本号
、蒲公英的自增 Build 版本号
的基础概念。
蒲公英 SDK 的更新机制,根据不同的版本有两种不同的机制:
新版本蒲公英 SDK 的更新,是根据 本地 App 的 Version
和App 本身的 Build
来判定更新的。这两个版本号中,任何一个检查到线上版本大于本地版本,都会提示更新。
第一步:
如果本地 App 的 Version
小于蒲公英上的 Version
,则提示更新。(注意:iOS App 的本地版本号是指 CFBundleShortVersionString, Android 是指 VersionName)
第二步:
如果本地 App 的 Build
小于蒲公英上的 Build
,则提示更新。(注意:iOS App 的本地版本号是指 CFBundleVersion,Android 是指 VersionCode)
在这两步中,任何一步如果判断出有新版本,都会提示更新。否则不会提示。
旧版本蒲公英 SDK 的更新,是根据 App 本身的 Version
和蒲公英自增 Build 版本号
来判定更新的。这两个版本号中,任何一个检查到线上版本大于本地版本,都会提示更新。
具体判定顺序是:
第一步:
如果本地 App 本身的 Version
小于蒲公英上的 Version
,则提示更新。(注意:iOS App 的本地版本号是指 CFBundleShortVersionString, Android 是指 VersionCode)
第二步:
如果本地 App 的蒲公英自增 Build 版本号
小于蒲公英上版本的自增 Build 号
,则提示更新。
在这两步中,任何一步如果判断出有新版本,都会提示更新。否则不会提示。
Android SDKV3.0.4 (2019.02.27)版本
更新强制更新功能。如若SDK设置中设置强制更新失效,请先检查SDK版本。IOS SDK暂不支持强制更新功能。
因为蒲公英的自增 Build 版本号
是不写入 App 内的。所以,对于手机上首次安装 App 来说,无论安装的是蒲公英上的哪个版本,SDK 都会认为该 App 本地的蒲公英自增 Build 版本号
是当前蒲公英上最新版本的自增 Build 版本号。
因此,在 SDK 第一次启动时,会检查本地是否存在 蒲公英自增 Build 版本号
,如果不存在,会调用蒲公英接口将最新的蒲公英自增 Build 版本号
写入本地文件中,以便下次用于版本更新的判断。
另外,需要注意的是,对于 iOS App,如果需要提交苹果 App Store,建议将自动更新功能去掉(相关代码和 SDK 也需要去掉),因为目前苹果并不允许含有自动版本更新功能的 App 上架 App Store。
支付成功
蒲公英 VIP 用户群
请打开微信 — 扫一扫,加入群聊