iOS开发之Appstore篇——版本更新

Posted 越自律,越自由!!!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS开发之Appstore篇——版本更新相关的知识,希望对你有一定的参考价值。


1.版本更新方法

+ (void)updateWithAPPID:(NSString *)appid back:(void (^)(NSString *, NSString *, NSString *, BOOL))back{
    NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];
    __block NSString *currentVersion = infoDic[@"CFBundleShortVersionString"];
    __block NSString *appstoreVersion = currentVersion;
    [self httpToolRequestWithUrlStr:nil baseUrl:[NSString stringWithFormat:@"http://itunes.apple.com/cn/lookup?id=%@",appid] method:GETSTR parameters:nil completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) {
        if (responseObject) {
            NSArray *results = responseObject[@"results"];
            NSDictionary *lastDict = [results lastObject];
            appstoreVersion = lastDict[@"version"];
            NSString *appstoreUrl = lastDict[@"trackViewUrl"];
            if (![currentVersion isEqualToString:appstoreVersion]) {
                if (back) {
                    back(currentVersion,appstoreVersion,appstoreUrl,YES);
                }
            }else{//不更新
                if (back) {
                    back(currentVersion,appstoreVersion,nil,NO);
                }
            }
        }else{//不更新
            if (back) {
                back(currentVersion,appstoreVersion,nil,NO);
            }
        }
    }];
}

2.页面更新提示

  [HttpTool updateWithAPPID:@"你的appid" back:^(NSString *currentVersion, NSString *storeVersion, NSString *openUrl, BOOL isUpdate) {
                        if (isUpdate) {
                            UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:@"版本更新" message:@"app更新了,赶快去更新啦!" preferredStyle:UIAlertControllerStyleAlert];
                            UIAlertAction *affirAction = [UIAlertAction actionWithTitle:@"更新" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
                                [[UIApplication sharedApplication]openURL:[NSURL URLWithString:openUrl]];
                            }];
                            UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"暂不更新" style:UIAlertActionStyleCancel handler:nil];
                            [alertVC addAction:affirAction];
                            [alertVC addAction:cancelAction];
                            [self.window.rootViewController presentViewController:alertVC animated:YES completion:nil];
                        }
                    }];

  

以上是关于iOS开发之Appstore篇——版本更新的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发从appStore下载历史版本

iOS Appstore 版本更新

iOS开发之进阶篇(15)—— CocoaPods

iOS 为什么使用xcode8上传app包到appStore无法构建版本

iOS Appstore 应用更新 - 代码签名

iOS获取当前AppStore版本号与更新