程序员的自我救赎---10.1:APP版本控制系统
《APP版本控制系统》
其实这个APP版本控制系统开发的前提也是有点奇葩,因为单纯的开发一款APP 压根就不需要去整一个APP版本管理中心。
最为重要是的,苹果的APP有APPStore,不用去管理升级这些问题,Android也一样可以使用360加固(http://jiagu.360.cn/)。
那既然360应用市场、应用宝、AppStore 这样的第三方市场都已经帮我们把升级功能做好为什么还要自己开发了一个APP版本控制系统?
本质来说其实就是“APK版本控制系统”,因为苹果的不用我们管嘛! 最重要的原因是:上传到第三方平台是否“合规”?
这里“合规”是打引号的,合规是合别人的规矩。 比如我们的英雄会APP在项目刚成立的时候老板志存高远,搞了很多模块,让整个APP
变成了一个融合:“机票、酒店、商城、新闻、爱心捐助、视频广告、棋牌游戏”等等等等 功能的一个“超级APP”。
现在回想起来那时候开发真TM的MMP痛苦,没完没了的加班开发。最后项目做出来去上线到各大平台:木蚂蚁、海卓、360、应用宝、豌豆荚。
全部被驳回了,不允许上线。理由各种各样比如: 需要信息网络传播视听节目许可证! 需要募捐资格许可!等等各种各样的证书,而且由于没有
这些证书还拿不下微信支付、支付宝支付。 痛苦,相当痛苦。
当时为了方便遂而开发了“APP版本控制系统”。(总得有个链接下载和更新的接口)

这样我们就免掉了被第三方平台各种审核的麻烦,有了APP版本控制系统我们就干脆让这个系统的职责集成以下几点功能:
1,通过配置提供只有内部测试版本(模仿微信的部分会员更新)
2,有版本控制中心来承载下载单页的职责(每个APP都有一个可访问的下载单页)
3,统计每个APP以及每个版本的下载次数。(其实这个功能第三方的更好用,第三方还有错误上报和性能分析)

(下载单页)
从技术上来说APP版本控制系统没有什么技术亮点可谈,无外乎三张表就搞定了的项目:
1, APP信息表
2, APP版本详情表
3,测试人员表
APP前端的功能就是:
1,新建APP,上传APP版本APk文件
2,配置内测人员账户,可实测哪个APP;
3,统计APP下载次数。
就这么简单:

这个项目我们是开源的GitHub下载地址:https://github.com/demon28/AppVersionControl
最后,我还是建议如果项目内容不是很复杂的话,还是使用像360这样的第三方平台做版本控制,毕竟集成的功能多,不用自己开发。
有兴趣一起探讨Winner框架的可以加我们QQ群:261083244。或者扫描左侧二维码加群。
程序员的自我救赎---10.1:APP版本控制系统的更多相关文章
- 程序员的自我救赎---1.4.2: 核心框架讲解(BLL&Tool)
<前言> <目录> (一) Winner2.0 框架基础分析 (二) 短信中心 (三)SSO单点登录 (四)PLSQL报表系统 (五)钱包系统 (六)GPU支付中心 (七)权限 ...
- 程序员的自我救赎---11.3:WinService服务
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---11.4:FileSystem文件服务
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---12.2.3: 虚拟币交易平台(区块链) 下 【C#与以太坊通讯】
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---3.1:理解Oauth2.0
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---3.2:SSO及应用案例
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---11.1:RPC接口使用规范
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---1.4.1:核心框架讲解(DAL)
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
- 程序员的自我救赎---1.4.3: 核心框架讲解(MVC)
<前言> (一) Winner2.0 框架基础分析 (二)PLSQL报表系统 (三)SSO单点登录 (四) 短信中心与消息中心 (五)钱包系统 (六)GPU支付中心 (七)权限系统 (八) ...
随机推荐
- TFboy养成记 tensor shape到底怎么说
tensor.shape 对于一位向量,其形式为[x,] 对于矩阵,二维矩阵[x,y],三维矩阵[x,y,z] 对于标量,也就是0.3*x这种0.3,表示形式为() 如果说这个矩阵是三维的,你想获得其 ...
- 2723:不吉利日期-poj
2723:不吉利日期 总时间限制: 1000ms 内存限制: 65536kB 描述 在国外,每月的13号和每周的星期5都是不吉利的.特别是当13号那天恰好是星期5时,更不吉利.已知某年的一月一日是 ...
- sublime3配置php环境
最后的演示效果: 1. 按照sublime3开始前的准备工作 Ctrl+Shift+P,再输入install ,最后再输入想要安装的软件 (输入install会有几十秒的延迟,请不要重复操作) 配置p ...
- PHP随手记1--内置函数date
1. date_default_timezone_set date_default_timezone_set — 设定用于一个脚本中所有日期时间函数的默认时区 在php中只用 mktime() 函数时 ...
- PHP 面试时常考的文件操作函数
前两天面试的时候,笔试要求写一些文件操作类函数,什么遍历目录获取文件扩展名之类的,回来后大致总结了一下PHP中一些常见的文件操作函数分享一下. 1.使用递归删除目录及目录下所有文件的方法. funct ...
- Springmvc ModelAndView踩过的坑之HttpServletResponse response
先抛出问题.以下两个方法声明有毛区别: @RequestMapping(value = "/rg") public void rg(@PathVariable Long pageI ...
- Uva 12436 Rip Van Winkle's Code
Rip Van Winkle was fed up with everything except programming. One day he found a problem whichrequir ...
- 通过ssh訪问NAT网络模式虚拟机里的Linux
进入 GuestOS : #/sbin/ifconfig 查看 inet addr : 10.0.2.15 然后到 HostOS 去, 看控制面板, 看网络和共享中心的VirtualBox Host- ...
- 利用linux shell自己主动顶贴
在论坛上面发帖问个什么东西的话,一旦不顶.帖子就秒沉了,可是又实在不想每时每刻都去顶,怎么办?以下展示了怎样利用shell 的crontab实现自己主动顶贴. 闲话不多说了,以豆瓣为例-– 1: 用c ...
- BZOJ 1211 HNOI2004 树的计数 Prufer序列
题目大意:给定一棵树中全部点的度数,求有多少种可能的树 Prufer序列.详细參考[HNOI2008]明明的烦恼 直接乘会爆long long,所以先把每一个数分解质因数.把质因数的次数相加相减.然后 ...