2013-02-27 143 views
8

मेरे पास Google क्लाउड मैसेजिंग के आधार पर एक ऐप है और यह अच्छी तरह से काम कर रहा था। अब (आज) अचानक यह एक समस्या शुरू हुई जिसे हमने कभी नहीं देखा है। डिवाइस के बीच भेजे गए प्रत्येक संदेश के लिए, प्राप्त करने वाला डिवाइस इसे दो बार प्राप्त करेगा। पहला लगभग तुरंत पहुंच जाएगा (भेजने के 3 सेकंड से कम के भीतर)। दूसरा कुछ मिनट बाद आता है। परीक्षण में दो डिवाइस हैं, समस्या वही है जो भी प्रेषक/रिसीवर है। तो यदि कोई डिवाइस दूसरे को कुछ संदेश भेजता है, तो दूसरा उन्हें तुरंत बहुत अधिक प्राप्त करेगा - लेकिन फिर बाद में, इसे संदेशों का बंधन प्राप्त होगा जो प्राप्त संदेशों की दूसरी प्रतियां हैं।जीसीएम डुप्लीकेट संदेश

मैंने यह सुनिश्चित करने के लिए ब्रेकपॉइंट्स लगाए हैं कि प्रेषण उपकरण अपराधी नहीं था: संदेश बिल्कुल एक बार भेजा गया था (यानी भेजने के लिए वेब सेवा बिल्कुल एक बार कहा जाता था - और बैकएंड के लिए कोड, जो चलता है Google ऐप इंजन पर, उम्र के लिए नहीं बदला है।) हालांकि, संदेश किसी भी तरह से प्राप्त करने वाले डिवाइस को दो बार वितरित किया जाता है। ब्रेकपॉइंट्स का उपयोग करके मैंने यह भी सुनिश्चित किया कि पक्ष प्राप्त करने पर हमारा अपना कोड ज़िम्मेदार नहीं है: यह सत्यापित है कि GCMIntentService::onMessage() वास्तव में प्रत्येक भेजे गए संदेश के लिए दो बार आक्रमण किया जाता है।

हमने यह भी सुनिश्चित किया है कि हमारे डेटाबेस में पंजीकरण आईडी नवीनतम है। इस बिंदु पर मैं फंस गया हूं और आगे की प्रगति करने के लिए विचारों की आवश्यकता है। तो कोई विचार?

+0

मैं इसे उपयोगकर्ता के रूप में पुष्टि नहीं कर सकता। लगभग 7 घंटे के बाद से मुझे हर संदेश दो बार मिलता है। फेसबुक, जीमेल और इसी तरह से। बहुत निराशाजनक ... मुझे जीसीएम – aeno

+0

एनो के साथ समस्या का संदेह है: पुष्टि के लिए धन्यवाद। क्या आप अपनी पोस्ट को "कैंट" के बजाय "पुष्टि कर सकते हैं" कहने के लिए संपादित करेंगे - यही वह है जो आप चाहते थे। Google एंड्रॉइड टीम से कोई भी इस जगह को देख रहा है? क्या इस पर कोई आधिकारिक शब्द है? – user2113392

+1

वही है। हमारे अभी भी विकासशील ऐप कल से डुप्लिकेट संदेश प्राप्त करता है। – swehrli

उत्तर

5

https://groups.google.com/forum/#!topic/android-gcm/EHZUTEJMeyw

उपरोक्त आधिकारिक GCM धागा की जाँच करें। हर कोई इस मुद्दे का सामना कर रहा है। Google की गलती!

+0

धन्यवाद जॉन द्वारा तय की गई है। और यह आज तय लगता है। – user2113392

0

हमें भी यही समस्या है, और हमें यकीन है कि हम संदेश को दो बार नहीं भेजते हैं। यह किस बारे में "विहित आईडी" यहाँ समझाया सामग्री से संबंधित समस्या हो सकती है: http://developer.android.com/google/gcm/adv.html

[...] हालांकि, अगर आवेदन में एक बग एक ही डिवाइस के लिए कई पंजीकरण से चलाता है, यह कठिन हो सकता है राज्य को सुलझाना और आप डुप्लिकेट संदेश के साथ समाप्त हो सकते हैं।

0

वही समस्या यहां। हमारे पास माईमालॉम और शहरी एयरशिप के साथ एकीकृत कई ऐप्स हैं और उनमें से सभी सोमवार से दो बार धक्का दे रहे हैं। हमने फेरन द्वारा सुझाए गए कैननिकल आईडी परिवर्तनों की भी जांच की है, लेकिन जीसीएम संदेशों को डिलीवर किया गया है (कोई तोपैनिक आईडी परिवर्तन नहीं)।