美文网首页
App实现强制更新--致前端和后台(项目亲身实践)

App实现强制更新--致前端和后台(项目亲身实践)

作者: 宝锤 | 来源:发表于2016-11-25 22:45 被阅读4638次

     作为一个有3年工作经验的iOS开发者,经历了有10余个大小项目,从来没有一个项目使用到了强制更新,一直对app强制更新有着一种好奇!正好现在所做的项目中做了这一点,此篇文章可以为同样对此感到好奇的同行提供点参考,同时也能加深自己的理解(理解是一种境界,实践是一种境界,通过自己的讲述,能让别人理解又是另一种境界)!

     强制更新的好处

      强制更新即为新版本app上线后,用户在进入app时,弹窗提醒用户更新(唯一的选择,不更新你没得用)。这样做可以有效的解决后台在更改新需求的同时,对之前版本的兼容问题。同时能够保证用户能够使用修复bug、以及新需求调整后的版本,方便用户使用。

     强制更新的坏处

      站在一个用户角度考虑,看到强制更新的app,感觉自己的自由被限制了,的确,毋庸置疑的一点事,强制更新牺牲了用户体验。

     *强制更新的具体实施

      app端需要在本地配置一个和后台约定好的参数,这里记为vCount,值为1.0。在app安装后第一次启动时,先请求一个检查checkVersion的接口,除了基本参数外,把vCount传过去。后台会根据vCount值去本地查看配置映射(此映射是后台来配置的) 。映射我们记为vCount = 1.0 <->version = 0.2.0,后台返回version为0.2.0。前端拿到后,和本地bundle version做比对,如果本地版本号为0.1.1则弹窗提示用户更新,点击更新跳转appstroe下载应用。

有以下两点需要注意:

一、后台的映射表是这样变化的

假设上线了3版记为      0.1.0  、0.1.1、0.2.0

那么保证正常更新,后台映射表应该是这样的:

1、上线0.1.0后,只有一条映射表                vCount = 0.1 <-> version = 0.1.0

2、上线了0.1.1后,应该有两条映射关系    vCount = 0.1 <-> version = 0.1.1

                                                                 vCount = 0.5 <-> version = 0.1.1 

这样才能保证0.1.0的用户,能够接收到更新提醒,同理那么下一版就应该如下

3、上线0.2.0后,应该有三条映射关系        vCount = 0.1 <-> version = 0.2.0

                                                                  vCount = 0.5 <-> version = 0.2.0

                                                                  vCount = 1.0 <-> version = 0.2.0

 即所有版本记录中的version全部指向最新上线版本!以此类推!

二、前端做checkVersion这个接口请求的时候,需要注意不只需要在app第一次启动检查更新,还需要app从后台进入前台时检查!!

    本文虽然是篇技术文章,由于此技术偏向于理解,逻辑较简单,就不贴代码!

相关文章

  • App实现强制更新--致前端和后台(项目亲身实践)

    作为一个有3年工作经验的iOS开发者,经历了有10余个大小项目,从来没有一个项目使用到了强制更新,一直对app...

  • App版本:后台实现策略梳理

    App升级更新方式包括:强制更新、非强制提示更新、非强制不提示更新等,这些内容我们可以依靠常识总结出来,但管理后台...

  • App 版本更新

    App更新流程:检查更新==>提示更新==>下载apk==>安装新版App 检查更新:根据不同的业务和后台逻辑实现...

  • 项目交付文件

    app安装包 管理后台地址/管理员用户名/密码 app前端页面代码 服务端和管理后台源代码 《项目需求文档》 《项...

  • vue+element实现前端逻辑分页及前端搜索功能

    后端一次获取数据前端分页 bug:vue和element实现的后台分页,当前是第二页,点击搜索,强制设置curre...

  • jenkins配置码云自动部署

    1. 需求背景 公司有后台项目和前端项目,后台和前端是分开部署的,后台是用svn进行代码管理,并且通过jenkin...

  • laravel项目开发规范第一天

    前言 本次实践是对一个现有的app的项目的后台进行代码规范,通过对比来实现bad code 到 good code...

  • app升级测试点

    作者:Gakki app升级测试点 主要分为强制强制更新与非强制更新 强制更新测试点:强制升级是否可以升级成功:从...

  • App研发流程规范

    移动APP项目研发流程规范: 其中,产品需求文档 > 前端开发两个版本 、UI设计 > 前端开发一半个版本、 后台...

  • node如何实现java接口的中转

    #序言 由于项目重构,需要实现彻底的前后端分离,前端页面和后台的接口放在不同的服务器上以便于维护,前端只维护页面,...

网友评论

      本文标题:App实现强制更新--致前端和后台(项目亲身实践)

      本文链接:https://www.haomeiwen.com/subject/uwrmpttx.html