IOS डिवाइस में यूनीक आईडी कैसे प्राप्त करें?




ios launcher (4)

मैंने सर्वर साइड में iOS उपकरणों की पहचान करने के लिए मैक एड्रेस का उपयोग किया है। जब सही मैक एड्रेस को पुनः प्राप्त करने में असमर्थ iOS 7 के साथ मेरे एप्लिकेशन को चलाएं। वैकल्पिक रूप से मैं इस्तेमाल किया

NSUUID *oNSUUID = [[UIDevice currentDevice] identifierForVendor];
[strApplicationUUID setString:[oNSUUID UUIDString]];

संपत्ति। लेकिन आवेदन के हर नए इंस्टॉलेशन के बाद यह मूल्य भी बदल गया। अब मैं सर्वर साइड में विशेष उपकरण का पता लगाना चाहता हूं? मैं iOS में प्रति डिवाइस कुछ अद्वितीय आईडी कैसे प्राप्त कर सकता हूं?


स्विफ्ट 3.x में डिवाइस आईडी प्राप्त करना

let deviceId = UIDevice.current.identifierForVendor?.uuidString

में डिवाइस आईडी प्राप्त करना

स्विफ्ट 3

let device_id = UIDevice.currentDevice().identifierForVendor?.UUIDString

स्विफ्ट 4:

let device_id = UIDevice.current.identifierForVendor!.uuidString

अब आपको प्रति डिवाइस एक अद्वितीय आईडी नहीं मिल सकती है। identifierForVendor आपको मिलने वाला सबसे अच्छा है। Apple ने एक विशिष्ट डिवाइस को व्यवस्थित रूप से पहचानने में अक्षम कर दिया है ताकि उपयोगकर्ताओं की आईडी विपणक द्वारा पास न की जा सके।

पहचानकर्ता को एक स्ट्रिंग के रूप में प्राप्त करने के लिए, आप उपयोग कर सकते हैं

let deviceId = UIDevice.current.identifierForVendor?.uuidString

अद्यतन करें

यदि आप एक सार्वभौमिक आईडी चाहते हैं तो आपके पास advertisingIdentifier प्रसारकर्ता का उपयोग करने का विकल्प है। हालाँकि, यदि उपयोगकर्ता ने अपनी डिवाइस सेटिंग में सीमित विज्ञापन ट्रैकिंग की है तो यह मान सभी जीरो को वापस कर देगा।

import AdSupport

let identifierManager = ASIdentifierManager.shared()
if identifierManager.isAdvertisingTrackingEnabled {
    let deviceId = identifierManager.advertisingIdentifier.uuidString
}

एनबी एप्पल की सिफारिश है कि इस कोड का उपयोग केवल ऐप डेवलपर्स के बजाय विज्ञापन फ्रेमवर्क बनाने वाली कंपनियों द्वारा किया जाए। यदि आप गैर-विज्ञापन से संबंधित उद्देश्यों के लिए अपने कोड के भीतर इसका उपयोग करते हैं तो अपने ऐप को अस्वीकार करने के लिए तैयार करें।


आप इस लिब का उपयोग कर सकते हैं: https://github.com/fabiocaccamo/FCUUID

कृपया दृढ़ता अनुभाग में तालिका देखें। uuidForDevice सबसे अधिक आवश्यक मामलों को कवर करेगा और यह iOS के पुराने संस्करणों से udid का सबसे अच्छा प्रतिस्थापन है।

Readme के उदाहरण Objective-C में हैं लेकिन यह स्विफ्ट के साथ भी काम करता है। मैंने इसे स्विफ्ट के पहले रिलीज से लेकर अब तक (स्विफ्ट 4.1) तक इस्तेमाल किया है।





ios