App版本更新接口的设计

2023-10-27



工作这几年碰到的版本检测升级的接口也算是五花八门,啥样的都有,但肯定有的功能是有个apk的下载链接,能间接或直接提示你是强制还是非强制更新:


- 间接是指提供你后台最新版本号,让你自己与本地版本号通过比较得出是否升级;
- 直接就是后台接口直接返回个Boolean类型告诉你是强制或者非强制更新。

如感觉排版看着不舒服,前往 【App版本更新接口的设计】
个人认为一个好的版本检测接口需要设计的更灵活更清晰用起来更方便,下面就我理解的接口设计如下(如思路有误,欢迎指正):


    总字段如下(并不是所有字段都要返回给客户端):
      1.最新版本号 :newVersion
      2.最小支持版本号 : minVersion
      3.apk下载url : apkUrl
      4.更新文案 : updateDescription
      5.是否有更新 : isUpdate
      6.是否强制更新 : forceUpdate
    可选字段:
      7.apk文件大小:apkSize
      8.apk的文件MD5值:md5


**方案一(后端处理逻辑):**
在客户端请求参数中添加当前版本号currentVersion传输给后台,由后台根据客户端传过来的当前版本号currentVersion做相应的判断后给出是否强制更新。
**后端逻辑如下:**
1. 如果cu
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

App版本更新接口的设计 的相关文章

  • Rclone笔记

    关于 rclone 在windows Linux上面得一些基本用法之前几篇文章介绍过 见 HomePage 官方文档 https rclone org commands 目录 一些简单命令 挂载 rclone命令 用自己的 api 进行 g
  • Linux文件/文件夹管理

    Linux文件权限 转自http secyaher blog 163 com blog static 3895577200911811924652 2009 12 08 13 19 24 分类 Linux 标签 字号大中小 订阅 Linux
  • 重装系统(无法开机时候操作方法)

    一 U盘 PE操作流程 1 制作PE系统启动U盘 微pe工具箱是一款可以直接帮助用户重装系统的工具 本文使用微pe工具箱制作 https www wepe com cn 1 首先下载微PE工具箱 用于制作U盘启动盘 选择安装方案 一般选择
  • protobuf下载与安装+ protobuf 与json相互转换方法

    WIN环境 下载与安装 下载 https github com protocolbuffers protobuf releases 官方git地址 目前最新的是3 8版本 我是c 环境 选择cpp下载包 protobuf cpp 3 8 0
  • C++ const在成员函数前后的区别

    修改自https blog csdn net weixin 41232202 article details 118973645 一句话总结 const放在函数后主要是限制类中的成员函数 const放在函数前是限制函数返回类型为指针时通过指
  • SIEBEL基础学习

    逻辑图梳理 解析 Application 在最上层 是一个Application Application是Siebel的一个应用 是业务上某个大模块 或者某个行业的所有功能的集合 譬如服务模块 Field Service 是一个Applic
  • SpringBoot集成Swagger3并配合knife4j增强文档

    前提 knife4j自带swagger依赖 不需要再引入其他swagger依赖 如果要使用 swagger spring boot starter 依赖 则knife4j必须和swagger的版本相对应 官方文档 版本对应关系 1 引入依赖
  • 【时序】特征工程-时间序列特征构造

    数据和特征决定了机器学习的上限 而模型和算法只是逼近这个上限而已 由此可见 特征工程在机器学习中占有相当重要的地位 在实际应用当中 可以说特征工程是机器学习成功的关键 特征工程是什么 特征工程是利用数据领域的相关知识来创建能够使机器学习算法
  • bandgap-ldo联合仿真

    具体电路可参考前面两篇文章 bandgap电路设计与LDO电路设计 本文是将上篇LDO电路的理想电流源用bandgap电路代替 实现完整的LDO电路 1 仿真测试电路 电源电压3V 误差放大器输入级VREF电压由bandgap电路提供 5u
  • 442、数组中重复的数据

    文章目录 一 题目描述 二 题目分析 三 代码实现 四 总结 一 题目描述 442 数组中重复的数据 给你一个长度为 n 的整数数组 nums 其中 nums 的所有整数都在范围 1 n 内 且每个整数出现 一次 或 两次 请你找出所有出现
  • docker 启动,关闭,查看运行状态

    启动docker systemctl start docker 关闭docker systemctl stop docker 查看docker的运行状态 systemctl status docker root izr86o15kikb3a
  • 目标跟踪学习笔记

    参考 https zhuanlan zhihu com p 90835266 真心感觉目标跟踪任务的难度和复杂度要比分类和目标检测高不少 具有更大的挑战性 如果你跟我一样是正在学习目标跟踪的新手 希望本文能让你对目标跟踪任务和DeepSOR
  • 基于Matlab实现图像压缩技术(附上完整源码+图像+程序运行说明)

    介绍 图像压缩是一种将图像数据压缩以减小文件大小的技术 在数字图像处理中 图像通常以像素阵列的形式表示 对于大型图像文件 传输和存储成本可能很高 因此图像压缩技术变得至关重要 在本文中 我们将介绍一种使用Matlab实现图像压缩的技术 图像

随机推荐

  • 通过L-evy飞行进行布谷鸟搜索

    英文 Cuckoo Search via L evy Flights 在本文中 我们打算制定一种新的元启发式算法 称为布谷鸟搜索 CS 用于解决优化问题 这个算法是基于一些布谷鸟物种的强制性的幼虫寄生行为与一些鸟类和果蝇的L evy飞行行为
  • Python webdriver.Chrome()的使用

    1 前提 Python与Chrome路径下均安装chromedriver exe 2 chromedriver exe版本选择及下载 下载地址为 http npm taobao org mirrors chromedriver Chrome
  • Mybatis中使用${}和使用#{}

    Mybatis中 和 的区别 1 使用 2 使用 3 总结 印象中一直认为使用Mybatis肯定能防止sql注入 前两天才发现我太天真了 防止sql注入也是有条件的 这我们就要了解下Mybatis中 和 的使用了 1 使用 Mybatis在
  • Ajax请求返回状态码415

    1 ajax请求服务器报415错误多半是ajax的请求格式不对 服务器不支持此媒体类型 那么 此时你首先小检查自己的ajax的格式是否正确 在就是传递的参数类型是否是正确的 传递给服务器的参数也要根据后台的要求设置 有时传递一个对象 但有时
  • UVA-10976 分数拆分 题解答案代码 算法竞赛入门经典第二版

    GitHub jzplp aoapc UVA Answer 算法竞赛入门经典 例题和习题答案 刘汝佳 第二版 除了书上讲的y lt 2k之外 y gt k 否则等式不可能成立 include
  • Hibernate @OneToOne FetchType.LAZY不生效

    在Hibernate中 提供了懒加载功能 当需要的时候才查询具体数据 但是在使用 OneToOne关系时 FetchType LAZY看起来不会生效 当你查询一个实体类A 这个实体类A持有另一个实体类B的引用 但是A中并没有记录B的主键 这
  • 怎样正确安装超声波水位计?

    1 应保持仪表垂直安装 在安装超声波液位计时 要保证换能器的发射面和被测的平面平行 这样可以保证垂直发射到被测物体表面的声波以最大的能量返回 2 实际安装时 如果现场工况有蒸汽 易有水珠附着在探头表面 并且探头的量程比实际要测量的距离大很多
  • Python 调用 WebService

    最近做新项目用 Python 开发 作为初学者 遇到了不少问题 客户端的一个模块要调用公司网站的一些新闻 只好用 WebService 实现 WebService 搭建我就不说了 这里主要说在 Python 调用 WebService 的方
  • BGP-路由反射器、联邦实验(1.11)

    目标 1 首先需要基于该与拓扑图对172 16 0 0 16进行子网划分 题中一共需要八个网段的环回和一个骨干链路共8个网段 172 16 0 0 20 骨干 再分为八个 172 16 0 0 30 172 16 0 4 30 172 16
  • java去重复元素并打印_Java打印数组中重复元素

    Java打印数组中重复元素 1 说明 在此程序中 我们需要打印数组中存在的重复元素 这可以通过两个循环来完成 第一个循环将选择一个元素 第二个循环将通过将所选元素与其他元素进行比较来遍历整个数组 如果找到匹配项 则打印重复的元素 在上面的数
  • 仙道服务器维护,【正式服】2月14日例行更新维护公告

    为了给您提供更优质的游戏体验 诛仙手游 正式服 将于2月14日7 00 9 00进行例行维护 如遇特殊情况 开机时间将会顺延 本次更新后 等级 30级的玩家将通过邮件收到200绑定元宝更新补偿奖励 情人节特别活动 1 执子之手 与子同秀 活
  • 【面试】面试官:src和href的区别

    1 请求资源类型不同 1 href是Hypertext Reference的缩写 表示超文本引用 用来建立当前元素和文档之问的链接 常用的有 link a 2 在请求 src 资源时会将其指向的资源下载并应用到文档中 常用的有script
  • C++STL容器(上)string/vector/deque/stack/queue/list

    数据结构 研究节点和节点之间的关系 STL 算法 容器 迭代器 实现了数据结构和算法的有效分离 用来管理元素 算法和迭代器可以进行无缝连接 count v begin v end 3 统计元素3的个数 容器除了可以放基础数据类型 也可以放元
  • 字符数组、字符串数组转换成字符串【JAVA基础】

    一 字符数组to字符串 直接声明 char c a b c String s new String c 二 字符串数组to字符串 string是不可变类 利用StringBuffer String str abc dfe hij Strin
  • l130 华大低功耗mcu_HC32L110C6PA HC32L110C6UA 华大超低功耗 Cortex-M0+ 32位MCU

    HC32L110C6PA HC32L110C4UAHC32L110C6UA 华大超低功耗 Cortex M0 32位MCU HC32L110C6PA HC32L110C4UA 华大超低功耗 Cortex M0 32位MCU 超低功耗 MCU
  • BLE基础理论/Android BLE开发示例/蓝牙扫描列表数量扫描包/扫描响应包设置等

    参考 https blog csdn net qq 36075612 article details 127739150 spm 1001 2014 3001 5502 参考 https blog csdn net qq 36075612
  • 蓝桥杯:李白打酒加强版

    话说大诗人李白 一生好饮 幸好他从不开车 一天 他提着酒壶 从家里出来 酒壶中有酒 22 斗 他边走边唱 无事街上走 提壶去打酒 逢店加一倍 遇花喝一斗 这一路上 他一共遇到店 NN 次 遇到花 MM 次 已知最后一次遇到的是花 他正好把酒
  • Java变量的分类(根据作用域)

    按照作用域的不同 变量可分为 成员变量和局部变量 成员变量有两种 静态变量和实例变量 成员变量 在类中声明 作用域是整个类 局部变量 在一个方法的内部声明 作用域是整个方法 静态变量 被static关键字修饰 在内存中只有一个 被类的所有实
  • Jenkins配置定时任务

    1 点击任务后 点击配置 2 选择 构建触发器 下面的 定时构建 并设定定时规则 设置完成后 构建任务就会按照我们设置的时间定时执行了 3 设定规则 此处定时任务的格式遵循 cron 的语法 可以与 cron 的语法有轻微的差异 具体格式
  • App版本更新接口的设计

    工作这几年碰到的版本检测升级的接口也算是五花八门 啥样的都有 但肯定有的功能是有个apk的下载链接 能间接或直接提示你是强制还是非强制更新 间接是指提供你后台最新版本号 让你自己与本地版本号通过比较得出是否升级 直接就是后台接口直接返回个B