程序员的自我救赎---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支付中心 (七)权限系统 (八) ...
随机推荐
- EXTtreeGrid分页
这个东西整了两天,关键在于要两个stroe,之所以要两个因为treestroe在分页的时候接受不了返回的总行数,不过有个问题就是第二页分页后显示在没有根节点的行层级显示不是那木明显: -------- ...
- web离线应用--applicationCache
applicationCache是html5新增的一个离线应用功能 离线浏览: 用户可以在离线状态下浏览网站内容. 更快的速度: 因为数据被存储在本地,所以速度会更快. 减轻服务器的负载: 浏览器只会 ...
- [flask 优化] 由flask-bootstrap,flask-moment引起的访问速度慢的原因及解决办法
一周时间快速阅读了400页的<javascript基础教程>,理解了主要概念.虽然对jquery.ajax.json这些方法的运用还不熟练,但在理清了概念之后解决了一个很久之前的疑问. 我 ...
- 使用Navicat导入.csv文件(过程和注意点)
1.创建一个数据库,右键点击表,选择导入向导. 2.在跳出的弹窗中选择.CSV文件,点击下一步 3.选择文件来源和编码规格,点击下一步 如果发现上传后中文出现乱码请使用10008这个编码规则 4.选择 ...
- javascript语言基础
js的基本语法 /* 多行注释 * */ //单行注释 // 变量赋值 默认以换行符作为结束符,有分号以分号作为结束符号 var i; i=10; s="hello"; var b ...
- suds库使用说明官方文档
OVERVIEW The Suds web services client is a lightweight soap-based client for python the is licensed ...
- 网页设计——5.table布局
今天做一个大的页面,主要是对table布局的理解: 代码: <table cellspacing=0 border=1 style="bordercolor:#C0C0C0;" ...
- 分享一些JAVA相关资源
前言 以前在学习JAVA时,因为搜索相关资源过于不便,所以在搜集了一些好用的资源之后,将此分享. 文档主要包括面试文档, JAVA的技术文档(如JAVA并发实战.设计模式之类),LINUX的相关文档以 ...
- node.js之fs模块
一.fs模块的mkdir函数,创建文件夹 var http = require("http"); var fs = require("fs"); var ser ...
- node-koa搭建MVC/RESTful API项目
本文将介绍如何基于node-koa搭建一个完整的mvc及restAPI的项目,项目封装了路由.模板引擎. 静态文件加载等基本功能:首先介绍项目的安装启动及目录结构说明,然后通过一个简单的登录页说明mv ...