आपको इसे अपने सर्वर पर देखना होगा। आप इसे एप्लिकेशन कोड से नहीं कर सकते हैं क्योंकि उपयोगकर्ता यह जानने का कोई तरीका नहीं है कि उपयोगकर्ता एप्लिकेशन को अनइंस्टॉल कर रहा है।
देखें: कैननिकल आईडी लागू करें। संदर्भ: https://developers.google.com/cloud-messaging/http#request
एक कैनोनिकल पंजीकरण आईडी को आपके आवेदन द्वारा अनुरोधित अंतिम पंजीकरण की आईडी माना जाता है। यह वह आईडी है जिसे डिवाइस को संदेश भेजते समय सर्वर का उपयोग करना चाहिए।
यदि बाद में आप एक अलग पंजीकरण आईडी का उपयोग करके एक संदेश भेजने का प्रयास करते हैं, तो जीसीएम सामान्य रूप से अनुरोध को संसाधित करेगा, लेकिन इसमें प्रतिक्रिया के पंजीकरण_आईडी क्षेत्र में कैननिकल पंजीकरण आईडी शामिल होगी। इस सर्वर के साथ अपने सर्वर में संग्रहीत पंजीकरण आईडी को प्रतिस्थापित करना सुनिश्चित करें, अंत में आप जिस आईडी का उपयोग कर रहे हैं वह काम करना बंद कर देगा।
संदर्भ: https://stuff.mit.edu/afs/sipb/project/android/docs/google/gcm/adv.html#canonical
विहित आईडी 0 नहीं है, तो आप एक नकली पंजीकरण की है।
कहते हैं, उदाहरण के लिए, आप अपने डेटाबेस में 2 पंजीकरण है:
registration_A
registration_B
जब आप एक पुश सूचना भेजने के लिए, अपने सर्वर कुछ है कि इस तरह दिखता है के साथ जवाब मिल जाएगा:
{"multicast_id":########,"success":1,"failure":0,"canonical_ids":1,"results":
[{"registration_id":"new_id_registration_id","message_id":"0:########"}]}
{"multicast_id":######### ,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:################"}]}
इस डेटा को एक सरणी में स्टोर करें। ध्यान दें कि पहले व्यक्ति के पास "canonical_ids" है: 1। इसका मतलब है कि एक डुप्लिकेट था। तो यह जानने के लिए कि आपके डेटाबेस में कौन सा रिकॉर्ड पुराना है। बस उपरोक्त में "पंजीकरण_आईडी" की खोज करें और सूचकांक मान को सहेजें। यह सूचकांक मान आपके डेटाबेस में पुराने रिकॉर्ड को इंगित करता है।
उपर्युक्त उदाहरण में, पंजीकरण_ए पुराना पंजीकरण_आईडी होगा।
अपने डेटाबेस से सभी रिकॉर्ड प्राप्त करें। फिर इसे पुनर्प्राप्त सूचकांक मान के आधार पर हटा दें। या आप इसे अपडेट कर सकते हैं। यह इस बात पर निर्भर करता है कि आप अपना डेटाबेस कैसे सेट अप करते हैं।
शुभकामनाएं!
से अधिक जानकारी मिली: [जीसीएम से पंजीकरण कैसे करें] (http://developer.android।कॉम/गाइड/google/gcm/adv.html # unreg) –
धन्यवाद। इसकी एक भयानक जानकारी – Sakthimuthiah
इस SO उत्तर पर अधिक जानकारी: http://stackoverflow.com/a/28057615/3913366। –