作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我在服务器端使用 mac 地址来识别 iOS 设备。使用 iOS 7 运行我的应用程序时无法检索正确的 mac 地址。或者我用过
NSUUID *oNSUUID = [[UIDevice currentDevice] identifierForVendor];
[strApplicationUUID setString:[oNSUUID UUIDString]];
属性(property)。但是这个值也会在每次新安装应用程序后发生变化。现在我想在服务器端检测特定设备?我怎样才能在 iOS 中获得每台设备的一些唯一 ID?
最佳答案
您无法再为每台设备获取唯一 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 建议此代码仅供构建广告框架的公司使用,而不是应用程序开发人员自己使用。如果您在代码中出于与广告无关的目的使用它,请准备好拒绝您的应用。
关于ios - 如何在 iOS 设备中获取唯一 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19402327/
我是一名优秀的程序员,十分优秀!