1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 如何通过蒲公英实现iOS版本自动提示更新 省去频繁打内测版本发链接给同事老板

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

时间:2022-08-12 11:20:35

相关推荐

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

一:xcode项目中需要做的操作

1.代码中设置bulid号

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

if [ "$CONFIGURATION" != "Debug" ]thenbuildNumber=$(/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:/apiv2/app/check

- (void)loadUpdateWithDic:(NSDictionary *)dic success:(void(^)(id response))success {[PPNetworkHelper POST:@"/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号

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。