26

アプリケーションを開発していますが、ユーザーがそのアプリを初めてインストールしたのか、それとも App Store からアップグレードしたのかを知る必要があります。

アプリが初めてインストールされたか、アップグレードまたは再インストールされたかをどのように検出できますか?

事前にご回答いただきありがとうございます。

4

5 に答える 5

4

スイフト3の場合

 let currentVersion : String = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as! String

let versionOfLastRun: String? = UserDefaults.standard.object(forKey: "VersionOfLastRun") as? String

if versionOfLastRun == nil {
     // First start after installing the app
} else if  !(versionOfLastRun?.isEqual(currentVersion))! {
      // App is updated
}

UserDefaults.standard.set(currentVersion, forKey: "VersionOfLastRun")
UserDefaults.standard.synchronize()
于 2017-07-11T11:42:12.137 に答える
0

念のため:

キーのローカライズされた値を取得するには、使用する必要がありますCFBundleGetValueForInfoDictionaryKey(CFBundleGetMainBundle(), "CFBundleShortVersionString" as CFString)

于 2017-04-01T05:16:05.520 に答える