在iOS 8 +中获取UDID

我需要获取iPhone的UDID才能在iOS应用中使用。

关于我的应用的一些信息:

  • 我的应用程序不是针对公众 ,因此我可以使用任何第三方库。 它只会被工作中的一些员工使用。

  • 我的设备将始终插入Mac,而我的应用程序正在运行。

  • 我看到它的方式,只有两种方法可以实现。

  • 使用第三方库来获取iOS应用内的UDID。
  • 由于在我的应用程序运行时iPhone始终会插入Mac,因此如何通过Mac获取UDID并以某种方式将其转移到iPhone中的应用程序中。
  • 任何想法,将不胜感激。 谢谢。

    编辑:问题是,你知道任何第三方库或更好的方式让我的应用程序在运行时自动获取iPhone的UDID吗?

    编辑2:我知道这可以使用只有我的手机,因为这个网络应用程序:http://get.udid.io/

    这个怎么用?


    如果你正试图读取UDID来自动化Mac上的某些东西,那么你可以使用类似system_profiler SPUSBDataType东西来获取UDID,为我的手机输入:

              Product ID: 0x12a8
              Vendor ID: 0x05ac  (Apple Inc.)
              Version: 7.01
              Serial Number: 7bed*********************************33
              Speed: Up to 480 Mb/sec
              Manufacturer: Apple Inc.
              Location ID: 0x1d110000 / 6
              Current Available (mA): 500
              Current Required (mA): 500
              Extra Operating Current (mA): 1600
    

    Serial NumberUDID (我已经主演过,因为我很愚蠢)。

    请注意,如果没有UDID你永远无法将应用程序放到手机上。

    你可以在mac上运行一个小的守护进程,读取这些信息并创建一个向请求者提供信息的bonjour服务 - 这是一个SMOP。


    这很简单。 转到Xcode窗口并选择设备,或者您可以在管理器中找到它。 在这里输入图像描述

    http://www.raywenderlich.com/2915/ios-code-signing-under-the-hood/organizerudid


    从网上快速浏览看起来,您可以使用名为libMobileGestalt.dylib的私有框架。

    链接库和导入标题后,你应该可以做这样的事情(参考):

    CFStringRef value = MGCopyAnswer(kMGUniqueDeviceID);
    NSLog(@"Value: %@", value);
    CFRelease(value);
    

    在我的Mac上,我可以在这里找到特定的dylib:

    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib/libMobileGestalt.dylib
    
    链接地址: http://www.djcxy.com/p/25355.html

    上一篇: Get UDID in iOS 8 +

    下一篇: Extending Protobuf Messages