刚刚看到UIDevice uniqueIdentifier属性在iOS 5中已弃用,在iOS 7及更高版本中不可用.似乎没有替代方法或财产可用或即将出现.
我们的许多现有应用程序都严格依赖此属性来唯一标识特定设备.我们如何处理这个问题呢?
2011 - 2012年文件中的建议是:
特别注意事项
不要使用uniqueIdentifier属性.要创建特定于应用程序的唯一标识符,可以调用该
CFUUIDCreate函数创建一个UUID,并使用NSUserDefaults该类将其写入默认数据库.
但是,如果用户卸载并重新安装应用程序,则此值将不同.
我正在为我的公司开发一个应用程序,我们正在通过将iPad添加到公司的iOS开发中心帐户来慢慢让人们进入"测试版".从那里我们为本地Intranet分发做一个临时构建.
在我的最后一次演出中,我会引导人们找到其中一个"为我找到我的UDID"应用程序,然后让他们向我发送它找到的UDID.
iOS 7已经关闭了 - 这些应用程序现在都已消失,如果你还有一个,它会返回一些与UDID无关的GUID.
所以我要做的就是将这些东西连接到我的Mac上,然后从iTunes中获取UDID,这有点麻烦(但是比试图向他们解释如何从iTunes获取它更加乏味,假设他们甚至安装它).有时它会尝试与我的Mac同步,除了在设备上放置我不想要的配置文件之外,它似乎没有任何影响.至少有一次我有一台iPad突然决定从iOS 6升级到iOS 7,我不确定是否与插入有关(在这种情况下,用户不希望升级).
除了将其插入机器之外,还有其他方法可以从iPad获取UDID吗?
要清楚:我不是想在应用程序中获取UDID,我只是想到了将UDID添加到我们的开发人员配置文件中的设备列表以便分发的最快方法.
我正在尝试编写类似于http://whatismyudid.com/的函数,然后批准,将返回用户UDID并将其存储到数据库以供将来与该用户一起参考.
我已经编写了一个在Profile Installer中打开的.mobileconfig xml文档,但是当我告诉它安装配置文件时,它会响应[alert] Invalid Profile但没有警报正文.没有描述,没有代码,没有帮助.
我是移动配置游戏的新手,所以任何帮助都会激动我.
这是我的配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<dict>
<key>URL</key>
<string>http://apps.mortlabs.com/device/retrieve.php</string>
<key>DeviceAttributes</key>
<array>
<string>UDID</string>
<string>IMEI</string>
<string>ICCID</string>
<string>VERSION</string>
<string>PRODUCT</string>
</array>
</dict>
<key>PayloadOrganization</key>
<string>MortLabs.com</string>
<key>PayloadDisplayName</key>
<string>Profile Service</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadUUID</key>
<string>B958E359-34C2-42F4-BD0C-C985E6D5376B</string>
<key>PayloadIdentifier</key>
<string>com.mortlabs.profile-service</string>
<key>PayloadDescription</key>
<string>This temporary profile will be used to find and display your current device's UDID.</string>
<key>PayloadType</key>
<string>Profile Service</string>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
通过移动safari 导航到http://apps.mortlabs.com/device/enroll.php来初始化配置文件
我正在为越狱的iOS设备开发应用程序.我使用https://github.com/erica/uidevice-extension/blob/master/UIDevice-IOKitExtensions.m获取IMEI,但在iPhone 5上,此解决方案不起作用(返回空字符串).有没有办法在iPhone 5(iOS 6.1.2)上获取IMEI?