2012-03-09 14 views
16

संभव डुप्लिकेट:
UIDevice uniqueIdentifier Deprecated - What To Do Now?वैकल्पिक (UDID)

यहां तक ​​कि अगर एप्पल बार्सिलोना के MWC (मोबाइल वर्ल्ड कांग्रेस) पर नहीं था, वहाँ निश्चय है कि हो रही थी डिवाइसआईडी को आगे आईओएस एसडीके में बहिष्कृत किया जाएगा।

मुझे समझ में नहीं आता कि ऐप्पल इसे क्यों प्रतिबंधित करना चाहता है, लेकिन यह विषय नहीं है।

मुझे अपने आवेदन को एक विकल्प में तैयार करना होगा क्योंकि मेरे उपयोगकर्ताओं को पहचान लिया गया है और मेरे ऐप के बेहतर उपयोग के लिए जाना जाता है (उदाहरण के लिए लॉग इन करने या खाता बनाने की आवश्यकता नहीं है)। और मुझे यकीन है कि मैं उस मामले में अकेला नहीं हूं।

तो किसी को डिवाइस आईडी प्राप्त करने का विकल्प पता है? क्या मैक एड्रेस की तरह अन्य अद्वितीय पहचानकर्ता है, उदाहरण के लिए? आप अपना ऐप कैसे तैयार करते हैं?

+0

क्या आप आईफोन डिवाइस आईडी या एसएचएच चाहते हैं? –

+0

मैं एक और अद्वितीय पहचान चाहता हूं कि डिवाइस आईडी, या उपयोगकर्ता की पहचान करने का एक और तरीका है। – Martin

उत्तर

5

अद्यतन

एक UUID उत्पन्न करने के लिए CFUUID का उपयोग कर के बारे में क्या प्रयास करें। आप की तुलना में uniqueidentifier विधि का बहिष्कार कर, एप्पल का सुझाव है कि आप की पहचान नहीं करते द्वारा बहुत पहले प्रक्षेपण पर चाबी का गुच्छा में यह स्टोर कर सकते हैं .. आप इसे इस प्रकार प्राप्त कर सकते हैं ...

NSString *uuid = nil; 
CFUUIDRef theUUID = CFUUIDCreate(kCFAllocatorDefault); 
if (theUUID) { 
    uuid = NSMakeCollectable(CFUUIDCreateString(kCFAllocatorDefault, theUUID)); 
    [uuid autorelease]; 
    CFRelease(theUUID); 
} 

और भी प्रति डिवाइस पर प्रति ऐप इंस्टॉल करने के बजाय। कल हो सकता है कि वे ऐसा करने के लिए आपके ऐप को अस्वीकार कर सकें ..:/ यह उम्मीद करता है कि इससे मदद मिलती है।

+0

डिवाइस के मैक पते का उपयोग करना होगा, लेकिन यह वही नहीं होगा यदि उपयोगकर्ता फिर से ऐप को हटा और स्थापित करता है (जिसे मैं मानता हूं, अक्सर नहीं होता है)। एक और बात, यह यूयूआईडी मशीन पर जेनरेट की गई है, इसलिए हमारे सर्वर पर हमारी उपयोगकर्ता सूची के माध्यम से अद्वितीय नहीं हो सकता है। – Martin

+0

@ मार्टिन कीचेन में मूल्य संग्रहीत करने के बारे में क्या ...? ऐप अनइंस्टॉल होने के बाद वह दूर नहीं जायेगा ..? और अनन्य इंडेंटिफायर विधि को छोड़कर, ऐप्पल सुझाव दे रहा है कि आप प्रति डिवाइस की पहचान नहीं करते हैं बल्कि प्रति ऐप इंस्टॉल करते हैं। कल हो सकता है कि वे ऐसा करने के लिए आपके ऐप को अस्वीकार कर सकें ..:/ –

+0

@ मार्टिन कृपया अपडेट की जांच करें। –

2

इस

- (NSString *)getDeviceID 
{ 
    NSString *uuid = [self gettingString:@"uniqueAppId"]; 
    if(uuid==nil || [uuid isEqualToString:@""]) 
    { 
     CFUUIDRef theUUID = CFUUIDCreate(kCFAllocatorDefault); 
     if (theUUID) 
     { 
      uuid = NSMakeCollectable(CFUUIDCreateString(kCFAllocatorDefault, theUUID)); 
      [self savingString:@"uniqueAppId" data:uuid]; 
      [uuid autorelease]; 
      CFRelease(theUUID); 
     } 
    } 
    return uuid; 

// this is depreciated 
// UIDevice *device = [UIDevice currentDevice]; 
// return [device uniqueIdentifier]; 
} 
+0

धन्यवाद, यह वही उत्तर है जैसा नीचे दिया गया है। मेरी टिप्पणी देखें। – Martin

+0

तो आपको डिवाइस – hchouhan02

2

कृपया नया तर्क लागू सुरक्षित UDID.it प्राप्त करने के लिए तीसरे पक्ष द्वारा

Learn about free solution:

यह वास्तव में ठीक काम करता है और यह पदावनत विधि बदलने के लिए एक उपद्रव बनाने के बिना implememt करने के लिए आसान है प्रदान की जाती है।

+0

में काम नहीं करता लिंक के लिए धन्यवाद। वेब के चारों ओर बढ़ रहे कई यूआईडी एपीआई हैं। मैंने अभी तक उनमें से एक का परीक्षण नहीं किया है। – Martin

+0

लिंक टूटा हुआ है –

+0

हाय आंद्रे मैंने लिंक अपडेट किया है। – Shantanu

संबंधित मुद्दे