如何使用iOS SDK查找序列号和IMEI号

8

在我的项目中,我想使用iOS SDK获取序列号和IMEI号码,我们可以使用哪些API在iOS7中获取。我查看了一些链接,他们使用IO框架,如果我们使用这些,苹果将拒绝该应用程序。我们该如何前进。


2
我担心你这样做仍然无法获得苹果的批准。 - mxb
2个回答

19

苹果不允许您检索任何设备特定信息,例如IMEI、UDID、Mac地址、序列号等。

这与这些标识符的滥用和用户隐私有关。


1
但如果这是一个企业应用程序,他们应该被允许识别设备。 - Baby Groot
@Re-L 可能是这样,但 SDK 是相同的,他们几乎不可能使用当前的 SDK。 - rckoenes
1
没问题。看起来大多数MDM都提供了通过设备名称或电子邮件ID获取UDID的API。 :) - Baby Groot

7

苹果禁止检索此类信息,因为这可能会对最终用户造成潜在的危害。相反,他们向您提供了identifierForVendor:

一个包含字母和数字的字符串,用于唯一标识设备到应用程序的供应商。(只读)

参考资料: https://developer.apple.com/library/ios/documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html#//apple_ref/occ/instp/UIDevice/identifierForVendor

如果您需要区分同一设备上来自同一供应商的不同应用程序,则可以使用advertisingIdentifier,但文档明确指出它只能在广告职责下使用(无论是为广告贡献安装还是在您的应用程序中展示广告)。此外,我因使用此id并未在iTunesConnect中声明而被应用拒绝。

一个包含字母和数字的字符串,用于仅为提供广告服务的设备进行唯一标识。(只读)

参考文献: https://developer.apple.com/library/ios/documentation/AdSupport/Reference/ASIdentifierManager_Ref/ASIdentifierManager.html#//apple_ref/occ/instp/ASIdentifierManager/advertisingIdentifier

如果您仍然决定选择后者,请不要忘记将AddSupport.framework添加到您的项目设置中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接