检测应用程序在备份还原后是否启动

问题描述 投票:0回答:1

有没有办法在swift中检测应用程序在恢复备份后是否启动?假设在设备上进行备份并将其恢复到另一台设备。

ios swift xcode backup restore
1个回答
0
投票

我试过一个似乎在经过一些测试后才能工作的解决方案我尝试了几个备份恢复,它对我来说很好。

第一步是在第一次运行app时保存供应商标识符:

if UserDefaults.standard.value(forKey: "vendorID") == nil {
    if let vendorID = myDevice.identifierForVendor?.description {
        UserDefaults.standard.set(vendorID, forKey: "vendorID")
    }
}

第二步是检查保存的供应商ID是否与当前设备的供应商标识符匹配。由于供应商ID在备份或将备份还原到设备后发生更改,因此如果两个供应商ID不匹配,我可以执行其他操作:

let savedVendorID = UserDefaults.standard.value(forKey: "vendorID") as! String
if savedVendorID == myDevice.identifierForVendor?.description {
    //The app can start normally
} else {
    //Do action needed after backup restore
}

供应商ID也会在其他条件下更改,但对于我的应用程序,这些更改无关紧要。

© www.soinside.com 2019 - 2024. All rights reserved.