? ? 開發中我們可能會遇到這樣的需求,當 AppStore 中有新版本迭代更新,在用戶點開 APP 的時候彈框提醒客戶去 AppStore 更新 APP。這里面就有個關鍵點,判斷當前 APP 與 AppStore 中的版本高低,若一樣,則無需進行提示;反之則彈框提示(用戶使用版本不會比 AppStore 版本高)。下面就了解如何獲取 APP 在 AppStore 中的版本號。
? ? 版本號
? ? CFBundleShortVersionString(Version) 指定包的發布版本號,標識應用程序的發布迭代版本。APP Store 所識別到的版本號。發布版本號是三個時期分離整數組成的字符串。例如 1.0.1。第一個整數表示應用程序的主版本號,表示實現新功能或重大變化。第二個整數代表次版本號,表示實現不太突出的功能。第三個整數代表修正版本號,表示維護已發行版本。
? ? CFBundleVersion(Build) 指定包的構建版本號,是Xcode里的一個構造版本。
如果項目上線的時候,先打一個IPA的包上傳 Version為1.0.1 build為1.0.1,這時候Version1.0.1 的包出現問題,需要重新打包上傳,可以依舊使用version1.0.1,但是這時候的build必須要換,如果依然用這個來進行打包,上傳的時候他會說 在你的商店里已經有了一個build為1.0.1的包,所以可以把build改為1.0.2。
? ? 升級
? ? 關于iOS版本升級,蘋果是不允許用戶有強制用戶升級的提示的,但是為了讓用戶知道APP更新了,一般APP里面是會有版本升級提示。下面來介紹一下一般都是怎么做的。
? ? Tips:
? ? 1、用 "https://itunes.apple.com/lookup?id=" 獲取版本號,會出現延遲或請求回來的版本號不穩定還有就是與剛剛發布的版本號對不上。 這個是連接國外的服務器,所以會有延遲。 解決:使用 "https://itunes.apple.com/cn/lookup?id=" 路徑。
? ? 2、如果上架的時候只選中國,而且又用"https://itunes.apple.com/lookup?id=" 獲取版本號,那么 resultCount 就為 0,獲取不到版本數據。解決方法同上。
? ? 3、曾經測試反饋在 APP 剛啟動時候都是白屏的情況。發現是版本號請求引起線程阻塞,所以要注意多線程問題。
? ? 4、應用程序還沒有發布,如何獲取它的 id 啊。不急,App Store Connect 創建要發布應用的時候會生成這個 id 的。
? ? 5、請求中需要的 id,登錄開發者賬號到 App Store Connect 上查看 App ID。
? ? More Thinking ,如何進行強制更新和非強制更新?
? ? Was this help article useful? Send feedback.