2012-05-04 19 views
6

Vì vậy, Apple đang từ chối các ứng dụng sử dụng UDID. Có rất nhiều bài viết về điều này, nhưng tôi không thể tìm thấy nơi được viết là nó tốt để sử dụng OpenUDID.UDID thay thế bằng OpenUDID là cách tốt này?

Vì vậy, có thể ai đó biết nếu quả táo sẽ phê duyệt điều này? Nếu OpenUDID có tất cả các tính năng như UDID?

Có thể ai đó đang sử dụng phương pháp này và có thể giải thích thêm?

Trả lời

1

Chúng tôi tạo UDID riêng dựa trên băm của địa chỉ MAC của thiết bị và bộ nhận dạng gói. Điều này đảm bảo rằng chúng tôi có thể xác định duy nhất ứng dụng của chúng tôi trên một thiết bị cụ thể.

Bạn cũng có thể tạo một băm chỉ dựa trên địa chỉ MAC nếu bạn cần một ID duy nhất trên nhiều ứng dụng.

Tôi đã thực sự viết một bài blog về làm thế nào để làm điều này và cung cấp một số mẫu mã ở đây:

https://radeeccles.com/blog/create-your-own-unique-device-identifier-udid

+5

Địa chỉ MAC sẽ không thể truy cập được đối với nhà phát triển từ [iOS 7] (http://techcrunch.com/2013/06/14/ios-7-eliminates-mac-address-as-tracking-option-signaling-final -push-direction-apples-own-ad-identifier-technology /), vì vậy điều này sẽ vô ích trong tương lai – Petesh

5

Có vẻ như là giải pháp đơn giản nhất là chỉ cần tạo ra UUID của riêng bạn:

NSString *UUID() { 
    CFUUIDRef cfuuid = CFUUIDCreate(NULL); 
    NSString *uuid = (__bridge_transfer NSString *)CFUUIDCreateString(NULL, cfuuid); 
    CFRelease(cfuuid); 
    return uuid; 
} 

Nếu bạn cần giữ điều này trong các chu kỳ gỡ cài đặt/cài đặt, hãy đặt nó vào móc khóa như được mô tả tại đây: https://stackoverflow.com/a/11597291/382374

Điều tốt nhất, đây là cách Apple đề nghị bạn làm điều đó.

Chúc may mắn!

0

Theo kiến ​​thức của tôi, đó là cách tốt. Tương tự như SecureUDID là một trong những cũng làm điều tương tự.Bằng cách sử dụng OpenUDID UDID không thay đổi ngay cả khởi động lại ứng dụng hoặc cài đặt lại ứng dụng. Nhưng nếu u thay đổi bất kỳ giá trị đầu vào như kOpenUDIDDomain hoặc kOpenUDIDSlotPBPrefix sau đó nó tạo ra UDID mới. tạo và lưu trữ vào PasteBoard. Nếu bạn thiết lập lại thiết bị vẫn giống nhau. Tôi cá nhân bỏ phiếu cho việc này.

Các vấn đề liên quan