iOS 的更新提醒教程
1.為 APPDelegate新增 一個 VersonUpdate 分類
2. 在.m 檔案中實現方法
//網路請求app的資訊
-(void)VersonUpdate{
//定義的app的地址
NSString *urld = [NSString stringWithFormat:@"http://itunes.apple.com/lookup?id=%@",APPIDForThisApp];
//網路請求app的資訊,主要是取得我說需要的Version
NSURL *url = [NSURL URLWithString:urld];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url
cachePolicy:NSURLRequestReloadIgnoringCacheData
timeoutInterval:10];
[request setHTTPMethod:@"POST"];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *task = [session dataTaskWithURL:url completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) {
NSMutableDictionary *receiveStatusDic=[[NSMutableDictionary alloc]init];
if (data) {
//data是有關於App所有的資訊
NSDictionary *receiveDic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
if ([[receiveDic valueForKey:@"resultCount"] intValue]>0) {
[receiveStatusDic setValue:@"1" forKey:@"status"];
[receiveStatusDic setValue:[[[receiveDic valueForKey:@"results"] objectAtIndex:0] valueForKey:@"version"] forKey:@"version"];
//請求的有資料,進行版本比較
[self performSelectorOnMainThread:@selector(receiveData:) withObject:receiveStatusDic waitUntilDone:NO];
}else{
[receiveStatusDic setValue:@"-1" forKey:@"status"];
}
}else{
[receiveStatusDic setValue:@"-1" forKey:@"status"];
}
}];
[task resume];
}
//獲取自身的版本號並與AppStore比較
-(void)receiveData:(id)sender
{
//獲取APP自身版本號
NSString *localVersion = [[[NSBundle mainBundle]infoDictionary]objectForKey:@"CFBundleShortVersionString"];
NSArray *localArray = [localVersion componentsSeparatedByString:@"."];
NSArray *versionArray = [sender[@"version"] componentsSeparatedByString:@"."];
if ((versionArray.count == 3) && (localArray.count == versionArray.count)) {
if ([localArray[0] intValue] < [versionArray[0] intValue]) {
[self updateVersion];
}else if ([localArray[0] intValue] == [versionArray[0] intValue]){
if ([localArray[1] intValue] < [versionArray[1] intValue]) {
[self updateVersion];
}else if ([localArray[1] intValue] == [versionArray[1] intValue]){
if ([localArray[2] intValue] < [versionArray[2] intValue]) {
[self updateVersion];
}
}
}
}
}
//根據比較的結果,實現彈窗
-(void)updateVersion{
NSString *msg = [NSString stringWithFormat:@"更新最新版本,優惠資訊提前知"];
UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"升級提示" message:msg preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction * cancleAction = [UIAlertAction actionWithTitle:@"取消"style:UIAlertActionStyleCancel handler:^(UIAlertAction*action) {
}];
UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"現在升級"style:UIAlertActionStyleDestructive handler:^(UIAlertAction*action) {
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"itms://itunes.apple.com/us/app/ 開發者名字(一定要英文)/idAPPID?l=zh&ls=1&mt=8"]];
[[UIApplication sharedApplication]openURL:url];
}];
[alertController addAction:cancleAction];
[alertController addAction:okAction];
[self.window.rootViewController presentViewController:alertController animated:YES completion:nil];
}
3. 在.h 檔案中暴露介面
//網路請求app的資訊
-(void)VersonUpdate;
4. 在 AppDelegate 的呼叫
-application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 方法中呼叫
獲取自身的版本號
appStore的版本號
/**/. 跳轉 App Store 沒有反應
替換中文:
相關文章
- win10系統如何取消愛奇藝影片更新提醒_win10取消愛奇藝影片更新提醒的步驟Win10
- 如何提醒使用者更新應用?
- win10系統如何取消愛奇藝視訊更新提醒_win10取消愛奇藝視訊更新提醒的步驟Win10
- 助理君 — 隨時得到程式碼更新提醒
- Mac日曆如何新增提醒事件的教程Mac事件
- iOS語音提醒開發總結iOS
- 如何關閉蘋果手機App Store更新提醒?蘋果APP
- 刪除分割槽更新全域性索引使用提醒索引
- iOS11關閉App評分提醒方法 一鍵關閉煩人的App評分提醒iOSAPP
- 華為遊戲登入多次重複提醒更新HMS Core遊戲
- 後臺提醒與代理提醒:HarmonyOS Next 的智慧提醒管理
- iOS 版本更新iOS
- Win10如何刪除日曆提醒事件_win10刪除日曆提醒事件教程Win10事件
- iOS11 更新後的修改iOS
- iOS版支付寶9.6.6更新 iOS版9.6.6更新日誌iOS
- 微信iOS收款到賬語音提醒開發總結iOS
- 關於教程更新
- 小米手環3來電提醒開啟方法教程 小米手環3怎麼開啟來電提醒?
- 我推薦的IOS教程iOS
- ios9.3.2 beta4更新了什麼 ios9.3.2 beta4升級教程介紹iOS
- ios9.3.3更新了什麼 ios9.3.3更新內容彙總iOS
- ArgoWorkflow教程(八)---基於 LifecycleHook 實現流水線通知提醒GoHook
- iOS12 beta5升級教程和更新攻略 iOS12 beta5怎麼升級iOS
- iOS12 beta6升級教程和更新攻略 iOS12 beta6怎麼升級iOS
- iOS APP檢查版本更新iOSAPP
- iOS熱更新實現方式iOS
- iOS FMDB 查詢 批量更新iOS
- iOS利用iTunesLookup檢查更新iOS
- iOS12 beta10升級教程和更新內容 iOS12 beta10怎麼升級iOS
- HBuilder打包iOS教程UIiOS
- Google Play 政策更新提醒與重點解讀 | 2021 年 10 月Go
- 課程提醒 | Google Play 下半年政策更新重點及線上問答Go
- iOS9.3.2更新升級有bug 為何iOS更新總是有問題?iOS
- mac的休息提醒健康助手Mac
- JavaFX教程-更新觸發器Java觸發器
- iOS-最全的App上架教程iOSAPP
- 寫給iOS小白的MVVM教程(序)iOSMVVM
- 微軟推送Windows 10升級“彈窗”提醒服務:敦促使用者更新微軟Windows