您无法再获得每台设备的唯一 ID。identifierForVendor是你将得到的最好的。Apple 系统性地禁止识别特定设备,以便营销人员无法传递用户的 ID。
要将标识符 ID 作为字符串获取,您可以使用
let deviceId = UIDevice.current.identifierForVendor?.uuidString
更新
如果您想要一个通用 ID,那么您可以选择使用advertisingIdentifier. 但是,如果用户在其设备设置中限制了广告跟踪,则此值将简单地返回全零。
import AdSupport
let identifierManager = ASIdentifierManager.shared()
if identifierManager.isAdvertisingTrackingEnabled {
let deviceId = identifierManager.advertisingIdentifier.uuidString
}
注意Apple 建议仅由构建广告框架的公司使用此代码,而不是应用程序开发人员本身。如果您在代码中将其用于与广告无关的目的,请准备好拒绝您的应用。