一:xcode项目中需要做的操作
1.代码中设置bulid号

2.在xcode中添加指定脚本(确保每次打版bulid号会自动+1,这样可以确保每次打包的bulid号>蒲公英上曾经打版的号)

if [ "$CONFIGURATION" != "Debug" ]
then
buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "$INFOPLIST_FILE"
fi

//写脚本位置截图

如果没有Run Version 选项,按照下图点击“+”创建

3.项目必须已经添加到蒲公英上,并把蒲公英上”对应项目”的Appid(kPGYApiKey)Apikey放到xcode 的宏定义文件中
在iOS 项目最先进入的控制器(一般是homeVC或者登陆页)添加提示更新的代码

- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view.[self hasUpdateVersion];
}//如果有最新版本上传到蒲公英,提示更新
- (void)hasUpdateVersion{kWeakSelf(self);NSDictionary *infoDic=[[NSBundle mainBundle] infoDictionary];NSString *currentBulidVersion=infoDic[@"CFBundleVersion"];//蒲公英的apikey,appkeyNSDictionary *paramDic = @{@"_api_key":kPGYApiKey,@"appKey":kPGYAppKey};[self.homeLogic loadUpdateWithDic:paramDic success:^(id response) {RLog(@"更新信息");if ([currentBulidVersion integerValue]<[response[@"data"][@"buildVersionNo"]integerValue]) {//如果当前手机安装app的bulid号<蒲公英上最新打包的bulid号,则提示更新UIAlertController *ac = [UIAlertController alertControllerWithTitle:@"版本有更新" message:@"检测到新版本,是否更新?"  preferredStyle:UIAlertControllerStyleAlert];UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:nil];[ac addAction:cancelAction];UIAlertAction *doneAction = [UIAlertAction actionWithTitle:@"更新" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {NSURL *url = [NSURL URLWithString:response[@"data"][@"buildShortcutUrl"]];[[UIApplication sharedApplication] openURL:url];}];[ac addAction:doneAction];[weakself presentViewController:ac animated:YES completion:nil];}}];

//蒲公英版本更新,蒲公英检查版本号api:https://www.pgyer.com/apiv2/app/check

- (void)loadUpdateWithDic:(NSDictionary *)dic success:(void(^)(id response))success {[PPNetworkHelper POST:@"https://www.pgyer.com/apiv2/app/check" parameters:dic success:^(id responseObject) {RLog(@"版本更新%@",responseObject);success(responseObject);} failure:^(NSError *error) {RLog(@"搜版本更新请求失败");}];
}

//蒲公英平台上对应的AppKey,ApiKey

//接口入口:蒲公英-文档-API2.0-检测App是否有更新

//蒲公英中请求蒲公英上版本是都有更新的api详情截图

//自动更新代码截图

二:蒲公英平台上的设置:
4.如果没有勾选bulid号自动+1,那么勾选下,确保当前最新的bulid号

如何通过蒲公英实现iOS版本自动提示更新,省去频繁打内测版本发链接给同事老板相关推荐

  1. 安卓实现APP自动检测软件版本并提示更新

    安卓实现APP自动检测软件版本并提示更新 前言 当我们在做安卓项目的时候,客户的需求往往难免会发生变动.但是我们的产品已经上线了,却又需要修改的话我们该怎么办呢?也许很多应用商店已经集成了这个功能,只 ...

  2. 微信小程序自动检测版本并提示更新新版本

    微信小程序自动检测版本并提示更新新版本 微信小程序开发过程中,我们在版本更新迭代后,微信小程序客户端并不能触发自动更新,需要用户手动清理小程序后重新搜索进入后才能获取到最新的小程序版本,但是这个是用户 ...

  3. mfc 更新服务器文件,MFC程序版本自动升级更新

    1.自动升级需要实现两个exe程序的交替启动,需要一个主程序和一个升级程序:在一个解决方案中创建两个项目,一个是你的主程序,另一个为你的升级程序:第二个程序创建选择添加到解决方案,同时选中你要添加的位 ...

  4. Selenium根据Chrome浏览器版本自动下载/更新驱动chromedriver.exe

    个人经常使用到selenium来控制浏览器进行相关的操作,但是Chrome浏览器经常会自动更新,导致已有的驱动程序chromedriver.exe失效,需要重新下载. 以前尝试过禁止Chrome浏览器 ...

  5. android版本的微信更新,安卓微信8.0版本在哪里更新?安卓微信8.0下载更新教程...

    安卓微信8.0版本在哪里更新?微信的最新版已经上线,但是安卓用户却没有找到更新的地方,所以想要了解安卓微信8.0版本更新的方法,那么下面就让小编带着大家一起来了解一下微信8.0版本安卓更新的具体详情. ...

  6. android 的检测更新,android 版本自动检测更新

    [实例简介] [实例截图] [核心代码] package com.hiyo.game.pdk.tool; import java.io.File; import java.io.FileOutputS ...

  7. uniapp提示系统已存在更高版本

    应用市场/其他渠道安装提示"本机有更高版本安装包,请直接安装" | 华为官网 问题原因 设备已下载了更高版本安装包文件. 参与应用内测版本卸载后,因未卸载完全,系统存在高版本残留文 ...

  8. 微信小程序版本自动更新用户感知提示方案总结

    微信小程序版本自动更新用户感知提示方案总结 需求背景 最近基于uniapp开发微信小程序上线后,在迭代版本后期望自动更新提示. 使感知. 解决方案 使用全局唯一的对象: updateManager. ...

  9. iOS APP版本自动更新

    1.版本自动更新一般采用API对应的方式 获取当前App Store上版本号 于本地存储的版本号对比 2.由服务端返回版本控制升级(容易审核不通过) 参考地址(很详细) https://blog.cs ...

最新文章

  1. 红帽虚拟化RHEV-PXE批量安装RHEV-H
  2. 怎样在python代码中输入π_鼠标自动点击、键盘自动输入?几行Python代码搞定
  3. mft文件记录属性头包括_NTFS 文件系统基础知识
  4. 工业级光纤收发器一般能正常使用多长时间?
  5. IDEA 不愧为神器,结合 Groovy 脚本,简直无敌!
  6. 人脸识别相似度计算方法
  7. vue表格信息进行空值填充,并使用 *** 修饰隐私信息
  8. 医疗行业容灾备份建设迫在眉睫
  9. wpa_supplicant交叉编译
  10. 入门pandas—数据填充
  11. python基础教程_python基础教程百度网盘
  12. 腾讯47岁T13大佬被裁,厂龄15年依然被毕业?
  13. 106个汉语多音字一句话总结!
  14. 解读《移动5G OpenUPF N4解耦设备规范》- 待更新
  15. 绩效辅导面谈中的STAR法则和SPIN
  16. Vitis开发笔记:将镜像刻录到SD卡
  17. 【测试】蓝牙设备测试技巧总结(不定期更新)
  18. 社区计算机培训班总结,2019年社区计算机培训工作总结范文
  19. 网络安全笔记1——Internet协议的安全性
  20. USB Gadget iMX6UL开发板模拟U盘

热门文章

  1. 通过xtts迁移单实例文件系统表空间到RAC ASM存储表空间
  2. Draw Call是什么?
  3. 【京东校招笔试】保卫方案
  4. uniapp二次封装slider滑块实现刻度尺设置全局页面字体大小
  5. A100 cuda 验证出错可能的原因
  6. javaWeb基础七天内容笔记汇总
  7. Pycharm增加第三方模块
  8. opencv图像处理:一、颜色空间转换
  9. python实现KNN模型分类预测并验证评估(附代码)
  10. HCNP BGP第一次实验