mysql判断app版本是否需要升级

例如:v1.001
后台存startVersion和endVersion
如何实现判断这种版本问题

阅读 5.3k
3 个回答

可以建立一个app版本号、上线时间、上线状态的表,查询最近上线的app版本号,与客户端传回的app版本号做大小版本,如果前者大于后者,则返回升级提示信息。

CREATE TABLE app_upgrade (
  id             INT         NOT NULL AUTO_INCREMENT,
  app_version    VARCHAR(20) NOT NULL DEFAULT '',
  release_time   TIMESTAMP   NOT NULL DEFAULT '1970-01-02 00:00:00',
  release_status TINYINT     NOT NULL DEFAULT 1,
  PRIMARY KEY (id)
)

查询

select app_version from app_upgrade where release_status = 1 order by release_time desc limit 1

索引的话,自己看着加。

除了字符类型的版本号x.y.z,还应该有一个构建编号,整型的,版本比较一般用构建号。

新手上路,请多包涵
/**
* version_upgrade 版本升级信息表
*/
CREATE TABLE `version_upgrade` (
  `id` int(4) unsigned NOT NULL AUTO_INCREMENT,
  `app_id` tinyint(4) unsigned NOT NULL DEFAULT '0' COMMENT '客户端设备id 1安卓手机 2ios手机',
  `version_id` smallint(4) unsigned DEFAULT '0' COMMENT '大版本号id',
  `version_mini` mediumint(8) unsigned DEFAULT '0' COMMENT '小版本号',
  `version_code` varchar(10) DEFAULT NULL COMMENT '版本标识',
  `type` tinyint(2) unsigned DEFAULT NULL COMMENT '是否升级  1升级,0不升级,2强制升级',
  `apk_url` varchar(255) DEFAULT NULL,
  `upgrade_prompt` varchar(255) DEFAULT NULL COMMENT '升级提示',
  `status` tinyint(2) DEFAULT NULL,
  `create_time` int(11) DEFAULT NULL,
  `update_time` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

判断用户当前app版本是否升级并且小于现有版本,提示更新

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题