php app版本升级的思路
用户端传递当前app的版本号,再根据机型和app_type ,查找数据库里的版本号 ,去比较 。。。
CREATE TABLE `common_versioninfo` (
`id` int(11) NOT NULL COMMENT '数据的id',
`client_type` tinyint(4) NOT NULL COMMENT '客户端类型(1 IOS 2 android)',
`app_type` tinyint(4) NOT NULL COMMENT 'APP类型(1 会员版 2医生版 3助理版)',
`client_version` varchar(255) NOT NULL DEFAULT '' COMMENT '客户端的版本号',
`server_version` int(11) NOT NULL COMMENT '服务器的版本号',
`update_note` text NOT NULL COMMENT '更新说明',
`app_link` varchar(255) NOT NULL COMMENT 'app的下载地址',
`is_required` tinyint(4) NOT NULL DEFAULT '0' COMMENT '是否强制更新(1强制更新 0选择更新)',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='客户端版本信息';
/**
* 检测是否有最新的版本
* @param int $type APP类型(1 会员版 2医生版 3助理版)
* @param int $client_type 客户端类型(1 IOS 2 android)
* @param string $version 当前的版本号
* */
public function check_version() {
$current_version = $this->input->post('version');
$client_type = $this->input->post('client_type');
$type = $this->input->post('type');
$this->load->model('Xh_client_model');
$latest_version = $this->Xh_client_model->get_latest_version($type, $client_type);
if ($current_version < $latest_version->server_version) {
$data = array(
'is_update' => TRUE, //是否需要更新
'is_required' => $latest_version->is_required == 1 ? TRUE : FALSE, //是否必须更新
'latest_version' => $latest_version->client_version, //最新的版本号
'update_note' => $latest_version->update_note, //更新的说明
'down_link' => $latest_version->app_link//安装包的下载地址
);
} else {
$data = array(
'is_update' => FALSE, //是否需要更新
'is_required' => FALSE,
'latest_version' => $current_version,
'update_note' => '',
'down_link' => ''
);
}
format_json(SUCCESS_CODE, $data);
}
php app版本升级的思路的更多相关文章
- Hybrid APP 架构设计思路
关于Hybrid模式开发app的好处,网络上已有很多文章阐述了,这里不展开. 本文将从以下几个方面阐述Hybrid app架构设计的一些经验和思考. 原文及讨论请到 github issue 通讯 作 ...
- Hybrid APP架构设计思路
通讯 作为一种跨语言开发模式,通讯层是Hybrid架构首先应该考虑和设计的,往后所有的逻辑都是基于通讯层展开. Native(以Android为例)和H5通讯,基本原理: Android调用H5:通过 ...
- cordova 跨平台APP版本升级
利用cordova+ionic开发好项目,之后就是打包发布,在这之前,还要做一个版本升级的小功能. 首先我们项目根目录里自然少不了配置:config.xml中 如图.version,我们以后每次升级A ...
- APP版本升级,测试用例总结
APP升级主要在线升级.离线升级.当有新版本时,提示更新,用户点击更新,下载最新版本,进行安装升级,这种就是在线升级:已有升级包,安装升级包进行升级,这种就是离线升级. 在线升级.离线升级常见测试用例 ...
- phonegap(cordova)从手机app跳转到web页面在跳转回APP本地页面思路
项目中需要用到 WAP支付宝支付. 但是 使用PHONEGAP开发 跳转到支付宝支付,然后跳转回来 就回不到APP的本地页面, 就是使用WAP的第三方登录也是一样的.很难从WAP页面在跳转到 app本 ...
- APP版本升级
/*** version_upgrade 版本升级信息表*/CREATE TABLE `version_upgrade` ( `id` smallint(4) unsigned NOT NULL AU ...
- MUI 混合开发移动app应用开发 --- app版本升级
当我们的app开发完成之后,无可避免的以后会进行产品升级,那么我们希望在客户的手机上让app进行自动升级,可以分为自动升级和手动升级. 自动升级:一般在客户app第一次打开首页的时候. 手动升级:在a ...
- APP UI自动化测试思路总结
python+appium自动化测试系列就要告一段落了,本篇博客咱们做个小结. 首先想要说明一下,APP自动化测试可能很多公司不用,但也是大部分自动化测试工程师.高级测试工程师岗位招聘信息上要求的,所 ...
- 小型app开发的思路
前提: 1. 性能不是最重要: 2. 人手少: 3. 速度要快: 结论: 1. 混合式 2. 减少app的复杂程度 3. 追求性能 (博客,尽量让自己每天写一点,短一点都可以)
随机推荐
- Ubuntu 下的环境变量配置
网上很多配置jdk环境变量的方法,但是几乎都会下次重启电脑就失效,或者时不时的失效.下面教你一招 JDK环境变量配置如下: 执行命令sudo gedit /etc/environment,在打开的编辑 ...
- Raspberry Pi(树莓派)上从零开始构建Linux系统(简称PiLFS)(一)
一. 准备工作 1. 装有Linux宿主系统的树莓派主板,可参考 Raspberry Pi(树莓派)上安装Raspbian(无路由器,无显示器) 2. 参考网址:Linux From Scratch ...
- SpringMVC第一天(其他)
SpringMVC第一天 框架课程 课程计划 参数绑定 SpringMVC默认支持的类型 简单数据类型 Pojo类型 Pojo包装类型 自定义参数绑定 SpringMVC和Struts2的区别 高级参 ...
- USACO 4.1 Fence Loops(Floyd求最小环)
Fence Loops The fences that surround Farmer Brown's collection of pastures have gotten out of contro ...
- elasticsearch最佳实践
创建索引 无mapping 创建索引名称为index的索引 curl -XPUT http://localhost:9200/book 有mapping 如果需要定义每个类型的结构映射,创建type名 ...
- JS的console使用
一,console输出的几种写法: console.error('错误信息') console.info('提示信息') console.warn('警告信息') console.log('普通信息' ...
- TreeView控制消息
控制消息的作用 通过发送消息到Treeview控件, 就能够控机Treeview控件.常用的控制有: 获取被点击的节点 获取节点的文本 设置节点的文本 获取节点的父节点 获取节点的子节点 TVM_GE ...
- 原生js
- windows下配置Java环境变量
一.首先, JDK的安装路径,在这里我们选择默认安装在C:\Program Files\Java\jdk1.7.0_45\目录下. 二.下面, 设置环境变量: [1]“我的电脑”右键菜单---> ...
- [SQL基础教程] 5-1视图
[SQL基础教程] 5-1视图 视图和表 从SQL角度看视图就是一张表 视图与表的差别 表保存了实际的数据,视图保存的是SELECT语句: 视图的优点 节省存储空间: 将常用的Select 语句保存成 ...