通过私有API检索UDID

我正在寻找一种方法来检索运行iOS 6+的设备上的UDID(仅限企业部署 – 没有app store限制)。

调用(现在是private)方法uniqueIdentifier返回以'FFFFFFF'开头的'vendorIdentifier'。 不幸的是,这不是我想要的。

有任何想法吗? 还有其他的私人方法吗?

提前致谢。

我build议你阅读这篇文章 。 总结一下:

  • 以前弃用的vendorIdentifier现在可以像iOS 7+上的vendorIdentifier一样工作,因此即使对于企业应用程序也不再可用
  • OpenUDID无法在iOS 7+上的应用程序之间共享,现在可以更改。 它仍然可用,但不再推荐。
  • vendorIdentifier没有更改,但不推荐用于企业应用程序,因为它可以在更新应用程序时更改。
  • 新的advertisingIdentifier API是新应用的方法。 所有应用程序都是一样的,不应该频繁更改,但用户可以在设置页面中重置它。

编辑:网站udid.io获得真正的设备UDID,而不是混淆的一个,如果你需要它的任何东西之外的应用程序。 如果您需要从应用程序内的UDID,请参阅我的答案上面。

您可以使用私有API通过此方法获得唯一的UDID。 点击此链接查看接受答案中的代码。

对不起,但苹果警告说,这将被弃用,它已经。 我自己也有同样的头痛。

我无法帮助您像苹果一样识别设备,但您始终可以在应用程序启动时生成唯一的UUID,并将其保存在KeyChain中。 它不会是完美的,但它会坚持在设备之间,并将是独特的设备。 据我所知,这是目前的解决scheme