一般App在設備上啟動后都會有做版本檢測以確認本版本是否是最新版本的App,以便提示用戶更新到最新版本。
當然可以在公司的的服務器做接口查詢,這是一個比較笨的辦法,但鑒於iOS App的上架App特性,我們希望檢測到當前設備安裝的版本與
App Store上的版本比較,具體操作如下:
1. 如何從App Store上獲取指定App的信息?
這里可以通過Apple公司提供的REST接口進行查詢,其接口如下:
http://itunes.apple.com/lookup?id=appid
參數appid指的是你在app在創建后的唯一標識,在iTunes Connect里可以查找到此信息。
此接口將返回一個JSON格式的字串內容,其中一個就是版本信息,如下:
"version":"1.6.0"
另一個重要的信息就是下載此版本App的下載頁面:
"trackViewUrl":"https://itunes.apple.com/us/app/zhang-shang-bao/id...?mt=.&uo=..."
2. 在獲取App Store上App版本后, 接下來就是獲取當前設備運行的App的最新版本:
[[NSBundlemainBundle] objectForInfoDictionaryKey:(NSString *)kCFBundleVersionKey];
3. 在比較完線上版本與本地版本后,如果發現線上(App)版本更高的話,則提示用戶跳轉到下載頁面,如下的代碼:
[[UIApplication sharedApplication] openURL:trackViewUrl];
就此完成,OK!