一、直接跳转google play应用详情
直接跳转到google play应用详情内由用户手动触发版本更新。
实现方式包括两种:跳转到google play app应用详情内和跳转到google play网页版应用详情内。
一般实现原则是用户如果安装了google play app跳转到app,未安装跳转到网页。
优点:代码实现简单不需要依赖额外代码,由google play提供下载安装,方便测试。
缺点:需要界面调整动作。
参考链接:https://developer.android.com/distribute/marketing-tools/linking-to-google-play#OpeningDetails
二、使用google play sdk
使用google play sdk进行版本更新需要依赖google play 核心库。
implementation 'com.google.android.play:core:1.8.2'
包体会增加50kb
有两种更新模式,灵活更新/立即更新。
灵活更新:将首先向用户显示一个对话框,以请求同意。如果用户同意,下载将在后台开始,并且用户可以继续与该应用进行交互。
在下载完成后提示用户下载已完成进行去安装,用户可以去安装也可能不去安装。
立即更新:会在整个更新过程中在应用程序UI顶部显示更新进度,Google Play会自动完成下载和安装更新。
优点:支持两种更新模式灵活更新对用户体验更好一点。(前期意义不大)
缺点:
- 只支持api 21(android 5.0)及其更高版本;
- 测试成本相对较高;
- 可能存在不确定性bug;
测试需要在内部共享应用程序包和apk:https://support.google.com/googleplay/android-developer/answer/9303479
可能存在的问题链接:Human verification - Stack Overflow
参考链接:In-app updates | Android Developers