iOS 利用 AppStore 版本號檢測當前版本和升級

? ? 開發中我們可能會遇到這樣的需求,當 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。

From Xcode Help Document

? ? 升級

? ? 關于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.

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,868評論 18 139
  • 審核申訴&申請加速審核 若您在提交審核后希望加速審核,或被拒后需要進行申訴可點擊按鈕聯系蘋果官方。 審核申訴 ...
    剩飯閱讀 4,760評論 2 8
  • 1、通過CocoaPods安裝項目名稱項目信息 AFNetworking網絡請求組件 FMDB本地數據庫組件 SD...
    陽明AGI閱讀 16,003評論 3 119
  • 2018-3-5星期一晴 今天是開學第一天,早晨鬧鐘一響,兒子第一個起床。吃過早飯送兒子去學校,路上兒子對我說:“...
    健康是福_3d2d閱讀 115評論 0 0
  • 關于拔牙 牙疼很久了,相比鉆心的劇痛,沉悶的隱痛來得更要命,真是磨人的過程。 原來世上還有那么痛苦的事,洗牙。生孩...
    本來不算笨閱讀 441評論 0 2