【问题标题】:need to impliment force update functionality in my App ios需要在我的 App ios 中实现强制更新功能
【发布时间】:2016-05-27 08:09:24
【问题描述】:

任何人都可以帮助我如何强制更新我的 iOS 应用程序。如果 AppStore 上有新版本可用,其中任何设备都有旧版本或不同版本,那么我想检查版本是否不同,然后用户从 AppStore 更新新版本。以及如何获取我的应用的应用信息。

【问题讨论】:

  • 您是在使用第三方还是您有自定义视图?
  • @JAGAT 不,我不想使用任何第三方库。
  • 目前我有来自我们 WS 的检查版本。但问题是我们必须一直在 WS 中更新新版本
  • 检查这可能会有所帮助stackoverflow.com/questions/6256748/…

标签: ios app-store version


【解决方案1】:

您可以通过将现代应用的版本与 App Store 上的版本进行比较来开发该功能。

enum VersionError: Error {

    case invalidResponse, invalidBundleInfo

}

class AppStoreCheck {

    static func isUpdateAvailable(completion: @escaping (Bool?, Error?) -> Void) throws -> URLSessionDataTask {

        guard let info = Bundle.main.infoDictionary,

            let currentVersion = info["CFBundleShortVersionString"] as? String,

            let identifier = info["CFBundleIdentifier"] as? String,

            let url = URL(string: your appstore url) else {

                throw VersionError.invalidBundleInfo

        }

        let task = URLSession.shared.dataTask(with: url) { (data, response, error) in

            do {

                if let error = error { throw error }

                guard let data = data else { throw VersionError.invalidResponse }

                let json = try JSONSerialization.jsonObject(with: data, options: [.allowFragments]) as? [String: Any]

                guard let result = (json?["results"] as? [Any])?.first as? [String: Any], let version = result["version"] as? String else {

                    throw VersionError.invalidResponse

                }

                let verInt = NSString.init(string: version).intValue

                let currentVerInt = NSString.init(string: currentVersion).intValue

                completion(verInt > currentVerInt, nil) 

            } catch {

                completion(nil, error)

            }

        }

        task.resume()

        return task

    }

}

此类将您的应用版本与您的应用商店版本进行比较,并将其报告为布尔值。 可以调用AppStoreCheck.isUpdateAvailable,通过bool值添加函数。

【讨论】:

    猜你喜欢
    • 2019-10-27
    • 1970-01-01
    • 2016-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多