zoukankan      html  css  js  c++  java
  • App版本升级相关

    版本升级描述:两种方式

    第一种:不需要服务端

    客户端直接从iTunes里面获取最新版本与本地版本比较,

    若大于本地版本,则升级;若小于或等于则不升级

    第二种:需要服务端交互

    每次提交版本/升级前把本地提交给服务端;由服务端控制是否更新:

    服务端把最新版本号发给客户端,以及升级的详细信息,升级状态:强制升级、普通升级、已经是最新版本,不需要升级。

     

    //获取本地版本

        NSDictionary *appInfoDic = [[NSBundle mainBundle]infoDictionary];

        NSString *appVersion = appInfoDic[@"CFBundleShortVersionString"];

        DEF_DEBUG(@"%@",appVersion);

    #pragma mark -appstore最新版本号//url中id换成 你们的应用id就行了

    - (void)getLatestVersion

    {

        NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://itunes.apple.com/lookup?id=1144308491"]];

        NSURLSession *session = [NSURLSession sharedSession];

        NSURLSessionTask *dataTask = [session dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {

            if (error) {

                DEF_DEBUG(@"%@",error.localizedDescription);

            }

            

            NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];

            DEF_DEBUG(@"%@",dic);

            NSString *currentVersion = dic[@"results"][0][@"version"];

     

    //        onlineVersionStr = currentVersion;

    //        updateDetail = dic[@"results"][0][@"releaseNotes"];

        }];

        [dataTask resume];

    }

  • 相关阅读:
    基础知识记录
    不同数据库'查询第几行到第几行记录'脚本的区别
    visual studio自动生成的私有内部字段变量以_为前缀
    ASP.NET Core 集成Prometheus+grafana
    netcore命令行运行程序
    RabbitMQ使用建议
    解决Pg新增数据主键冲突
    .Net Core调用第三方WebService
    .Net Core调用oracle存储过程
    call,apply,bind使用区别
  • 原文地址:https://www.cnblogs.com/StevenHuSir/p/iOS_Update_Version.html
Copyright © 2011-2022 走看看