重新安装 apk 的行为是什么?
What is the behavior on reinstalling an apk?
当您通过 Play 商店/Apple 商店安装应用程序时,在线商店最终会为您提供最新信息。
例如:如果您有 v1 版本并发布到 v2,商店本身会通知您并提供升级选项。
这次更新到底发生了什么?完整的 apk 再次下载或者是增量/差异类型的(仅下载已更新的文件)。
当您安装场外 apk(无需订阅)时...无论是调试还是发布...如何进行更新?
例如:我在 android studio 中生成了 apk("Generate Signed Bundle" 或从调试中获取),我将其传输到 android 并安装了它...如果我更新apk 并再次执行该过程....我会得到同一个 apk 的两个不同版本还是重叠?
所有APK都带有一定的证书签名,如果匹配则只进行更新,否则您需要卸载现有的。
更新的大小取决于您发布更新的方式。如果您上传 APK,那么将进行全尺寸下载。如果您上传应用程序包,则只会下载差异大小。
如果开发人员编写了正确的数据库迁移逻辑,则在更新时它会保留应用程序数据和数据库记录。
例如。在版本 1 中,用户 table 有 5 个字段,而在版本 2 中,您又添加了 2 个字段。然后您需要编写迁移逻辑(Alter table 查询),以便版本 1 用户数据正确映射到版本 2 用户 table。
请参阅 this post 了解更多详情。
调试 APK 和发布 APK 将具有不同的签名,您不能使用调试版本更新发布应用,反之亦然。
当您通过 Play 商店/Apple 商店安装应用程序时,在线商店最终会为您提供最新信息。
例如:如果您有 v1 版本并发布到 v2,商店本身会通知您并提供升级选项。
这次更新到底发生了什么?完整的 apk 再次下载或者是增量/差异类型的(仅下载已更新的文件)。
当您安装场外 apk(无需订阅)时...无论是调试还是发布...如何进行更新?
例如:我在 android studio 中生成了 apk("Generate Signed Bundle" 或从调试中获取),我将其传输到 android 并安装了它...如果我更新apk 并再次执行该过程....我会得到同一个 apk 的两个不同版本还是重叠?
所有APK都带有一定的证书签名,如果匹配则只进行更新,否则您需要卸载现有的。
更新的大小取决于您发布更新的方式。如果您上传 APK,那么将进行全尺寸下载。如果您上传应用程序包,则只会下载差异大小。
如果开发人员编写了正确的数据库迁移逻辑,则在更新时它会保留应用程序数据和数据库记录。
例如。在版本 1 中,用户 table 有 5 个字段,而在版本 2 中,您又添加了 2 个字段。然后您需要编写迁移逻辑(Alter table 查询),以便版本 1 用户数据正确映射到版本 2 用户 table。 请参阅 this post 了解更多详情。
调试 APK 和发布 APK 将具有不同的签名,您不能使用调试版本更新发布应用,反之亦然。