Я сравниваю номер версии приложения магазина приложений с существующим номером версии приложения.И это работало нормально, теперь вдруг это не потому, что в поле версии JSON
больше не пишется номер версии, а строка "Изменение описания приложения" как получилось?
class func isUpdateAvailable() -> Bool {
guard let info = Bundle.main.infoDictionary,
let currentVersion = info["CFBundleShortVersionString"] as? String,
let identifier = info["CFBundleIdentifier"] as? String,
let url = URL(string: "http://itunes.apple.com/lookup?bundleId=\(identifier)") else {
print("Invalid info")
return false
}
do {
let data = try Data(contentsOf: url)
guard let json = try JSONSerialization.jsonObject(with: data, options: [.allowFragments]) as? [String: Any] else {
print("Version error")
return false
}
if let result = (json["results"] as? [Any])?.first as? [String: Any], let version = result["version"] as? String {
print("version in app store", version,currentVersion);
print(result)
let versionInStoreD = Double(version)! //SO I HAVE A CRASH HERE
let currentVersionD = Double(currentVersion)!
if versionInStoreD > currentVersionD {
return true
} else {
return false
}
} else {
return false
}
} catch {
return false
}
}
Как это JSON
"version": "App description change", "contentAdvisoryRating": "17+", "trackName": "BlaBlaBla", "kind": "software", "artistName": "BlaBlaBla", "sellerName": "BlaBlaBla"
РЕДАКТИРОВАНИЕ ВОПРОСА ОБНОВЛЕНИЯ
Это то, что я нашел в приложении Connect.Вместо номера версии у меня есть текст " Изменение описания приложения ". Я действительно не знаю почему, но как я могу это изменить?Мое приложение уже одобрено и находится в магазине.