iOS学习集--网上转载iOS实战iOS 易混淆的点

ios提示用户版本升级

2016-05-14  本文已影响6638人  七秒记忆的鱼儿

本文主要介绍的是两种提示用户的更新的方法,文字比较多。但都是逻辑

现在苹果审核不能看到版本提示更新的字样以及功能,如果你的APP里面有这个功能还有字样,那么恭喜你,你会被拒绝的。但是“操蛋”的策划,还必须让我们实现,给他解释也解释不清楚,他就会说:“别人的怎么有,别人的怎么能通过审核”。听到这是不是有种想打人的冲动。好吧,废话扯得有点多了,还是言归正传吧。我给大家推荐两个思路。

方法一:

1.需要后台的配合,当您的APP还没上架的时候,后台给你返回的数据里面,是没有审核那个字段的。当你的APP上架的时候,让后台返回您的数据里面有这个字段。
注意:这个方法是有个毛病的,如果升级改怎么办呢?升级的时候你的APP是上架状态啊。靠还是搞不定啊。

解决方法:

还是需要后台的配合,你可以发送请求的时候,把你当前的版本号,发送给后台,让后台去判断,该不该返回更新版本信息。(本人思想,能让后台做的,前台就不去搞)

09465884-FEEF-42FB-B333-C72EA6CE2F72.png

方法二:

1.这个就不需要后台了,需要自己代码实现。现在后台都是比较牛逼的,所以只有自己去实现了。
实现的思路:
1.你要获取你在APP store上面的版本号和你程序的版本号进行比较下就OK了,小了就提示用户更新。直接看代码吧。

             /**获取程序的版本号*/
NSString *version = [[[NSBundle mainBundle]infoDictionary] objectForKey:@"CFBundleVersion"];
AFHTTPSessionManager *mgr = [AFHTTPSessionManager manager];
[mgr.responseSerializer setAcceptableContentTypes: [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil]];
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
//    dict[@"id"] = @"1073033949";//  上架的ID
dict[@"id"] = App_ID;// 你程序的apple ID号
[mgr POST:App_URL parameters:dict success:^(NSURLSessionDataTask * _Nonnull task, id  _Nonnull responseObject) {// App_URL http://itunes.apple.com/lookup
    NSArray *array = responseObject[@"results"];
    if (array.count != 0) {// 先判断返回的数据是否为空   没上架的时候是空的
        NSDictionary *dict = array[0];
        self.dictM = dict;
        [array writeToFile:App_URLPath atomically:YES];// 这是我保存到本来了  后面的功能要使用
        if ([dict[@"version"] floatValue] > [version floatValue]) {//判断版本大小了
            UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"更新" message:@"有新的版本更新,是否前往更新?" delegate:self cancelButtonTitle:@"关闭" otherButtonTitles:@"更新", nil] ;
            alert.delegate = self;
            [alert show];

        }
    }
    
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
    
}];
注意:这个方法也是有个缺陷的,就是苹果返回的数据不能变,一变就不好办了。但是个人觉得,苹果更改的话,也会保留原有数据方法的,所以此担心可以忽略。但是该方法什么时候掉是个问题,是每次启动都要访问还是隔段时间访问,个人觉得一星期访问一次就可以了,如果有更新,就该提示用户了。

APPLE ID的获取位置

C05498B7-9102-4BAE-9EDD-0C0BFC740E66.png
上一篇下一篇

猜你喜欢

热点阅读