Android GCM SENDER_ID, इसे कैसे प्राप्त करें?


80

मैं प्रवास करने की कोशिश करता GCMहूं और मेरे पास एक मुद्दा है जिसे SENDER_IDमुझे प्रदान करने की आवश्यकता है। मैं Google से डेमो प्रोजेक्ट का उपयोग करता हूं। इस परियोजना में, अगर मुझे यह अच्छी तरह से समझ में आता है, तो SENDER_IDकॉमन यूटिलिटीज.जावा फ़ाइल में आवेदन करने के लिए।

मेरे द्वारा प्रदत्त SENDER_ID वह API कुंजी है जिसे मैंने https://code.google.com/apis/console/ पर पंजीकृत किया है और इसका यह रूप है: AIzaSyAxxxxxxx_xxxxxxxxxxxnoGZw(कुल 40 वर्ण)।

इस स्ट्रिंग का उपयोग करते हुए SENDER_IDमुझे "ब्रॉडकास्टसीवर mHandleMessageReceiver" पर एक त्रुटि संदेश मिलता है: GCM से: त्रुटि (INVALID_SENDER)।

कहां चूक हुई? मेरे द्वारा प्रदान की जाने वाली स्ट्रिंग नहीं है SENDER_ID?

धन्यवाद।


यहां GCM Sender Id और API Key प्राप्त करने के लिए चरण-दर-चरण प्रक्रिया है। - अजाक्सटाउन.com
अभिषेक साहा

जवाबों:


182

नहीं, SENDER_ID वह प्रोजेक्ट ID है जिसे आपने Google API कंसोल पर साइन अप किया है, यह एक संख्यात्मक स्ट्रिंग होनी चाहिए। आपके ब्राउज़र URI पर उदा, आपको यह देखना चाहिए:

https://code.google.com/apis/console/#project:4815162342

प्रेषक आईडी 4815162342 है

अपडेट किया गया उत्तर:

Google ने अपने डॉक्स को पूरी तरह से अपडेट नहीं किया है। उपर्युक्त उत्तर पुराना है और यह इस दस्तावेज पर आधारित है और ऐसा लगता है कि यह अभी भी अपडेट नहीं हुआ है।

अपडेट किए गए Google डॉक्स के अनुसार , ऐसा लगता है कि Google API कंसोल पर प्रोजेक्ट नंबर का उपयोग SENDER ID के रूप में किया जाता है


1
मैंने कुछ प्रयोग किए - मुझे इंटरनेट पर एक पूर्ण उत्तर नहीं मिला और अंत में मुझे पता चला कि प्रेषक_ आईडी सेवा में पंजीकरण करने के लिए उपयोग किया जाने वाला ईमेल है। यदि आप चाहते हैं कि आपका उत्तर चिह्न के रूप में स्वीकृत हो, तो कृपया उसे संपादित करें।
१ter:

3
ज़ेल्टर, प्रेषक_आईडी के रूप में ईमेल पते का उपयोग करते हुए पंजीकरण का पदावनत सी 2 डीएम तरीका है। यहाँ देखें: 'ग्राहक परिवर्तन' के तहत developer.android.com/guide/google/gcm/c2dm.html : माइग्रेशन सरल है! आवेदन में आवश्यक परिवर्तन नई सेवा के लिए साइन अप करते समय उत्पन्न प्रोजेक्ट आईडी के साथ पंजीकरण इरादे के प्रेषक पैरामीटर में पारित ईमेल खाते की जगह ले रहा है।
२०:०२ पर ऐजगोलर

2
धन्यवाद azgolfer प्रवासन संभवतः किसी से यह जानने की उम्मीद कैसे कर सकता है? यह लगभग वैसा ही है जैसे Google इसे जितना संभव हो उतना मुश्किल बनाने के लिए बाहर जा रहा है।
यूरिग जोन्स

3
हे @azgolfer क्या आप मेरे उत्तर के आधार पर अपना जवाब अपडेट कर सकते हैं? stackoverflow.com/a/27020029/231768 GCM प्रोजेक्ट आईडी से बदल रहा है जिसका उपयोग किया जा रहा है, और वे
एडम

2
SENDER_ID को google-services.json फ़ाइल (कॉन्फ़िगरेशन फ़ाइल) में "प्रोजेक्ट_नंबर": "12456789" के रूप में पाया जा सकता है।
एर्डी

57

मैंने नवीनतम Google API कंसोल के लिए किया है

कैसे प्राप्त करें SenderId:

चरण :

  1. Google एपीआई कंसोल खोलें
  2. प्रोजेक्ट बनाएं
  3. लेफ्ट हैंड साइड मेनू आइकन पर क्लिक करें
  4. Google क्लाउड प्लेटफ़ॉर्म पर क्लिक करें
  5. आपको SenderIdवहां फॉर्म मिलेगा

संदर्भ:

यहाँ छवि विवरण दर्ज करें

आशा है कि यह आपकी मदद करेगा।


1
धन्यवाद, आपकी इच्छा है कि मुझे यह पहले मिले :)
चाँदी

एक नोट के रूप में, आपको कभी भी किसी चीज को ओवरराइड करके सेंसर नहीं करना चाहिए, इसके बजाय उस हिस्से को बॉक्स टूल से चुनकर हटा दें। आपके यूआरआई और प्रोजेकट-आईडी दोनों किसी के लिए पठनीय हैं, विशेष रूप से दुर्भावनापूर्ण किसी के साथ।
उम्मीद है कि

23

अपने Google API कंसोल पृष्ठ पर जाएं । बाईं ओर स्थित ड्रॉप डाउन मेनू से आपके द्वारा उपयोग की जाने वाली परियोजना का चयन करें। अवलोकन का चयन करें और अब आप देख सकते हैं project number। यह SENDER_IDआप का उपयोग करने के लिए है

अपना प्रोजेक्ट नंबर प्राप्त करने का दूसरा तरीका यह है कि आप अपने url से "प्रोजेक्ट" का मूल्य प्राप्त करें। आपका यूआरएल इस तरह होना चाहिए: " https://code.google.com/apis/console/b/0/#project:886025556782 "। यहां प्रोजेक्ट नंबर "886025556782" है। यह नंबर SENDER_ID है


क्या होगा अगर मेरा url प्रोजेक्ट नहीं है कोई नहीं दिखाता है? वास्तव में मेरा url इस तरह से है " कंसोल .developers.google.com/project/Project ID"
प्रियांक

प्रियांक, मेरा जवाब देख। Google ने इसे हाल ही में बदल दिया है। stackoverflow.com/a/27020029/231768
एडम

9

नवंबर 2014 के अनुसार एक अद्यतन जवाब यदि आप एक एपीआई परियोजना को हाल ही में बनाया है

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

ध्यान दें कि यह अलग है क्योंकि Google ने संशोधित किया है कि वे हाल ही में प्रोजेक्ट आईडी कैसे असाइन करते हैं। अक्टूबर में मैंने एक परियोजना बनाई और मुझे सभी संख्यात्मक परियोजना आईडी दी गई, जो मुझे लगता है कि ठीक काम करेगा। लेकिन आज जो मैंने बनाया, उसे दो-शब्द और एक नंबर आईडी (जैसे हम्सटर-पार्टी-420) और एक संख्यात्मक प्रोजेक्ट नंबर दिया गया था। मेरे प्रोजेक्ट के URL में हम्सटर-पार्टी-420 है, और प्रोजेक्ट नंबर केवल अवलोकन स्क्रीन पर दिखाई दे रहा है।


6

फिर भी भ्रमित (.. जैसे मैं था) के लिए थोड़ा और स्पष्टीकरण के साथ एक और अद्यतन उत्तर। (@azgolfer, @PankajAndroid और @Adam के लिए उचित क्रेडिट के साथ)

1- यदि आप https://console.developers.google.com पर एक प्रोजेक्ट बनाते हैं , तो आप प्रोजेक्ट अवलोकन में दो चीजें "परियोजना आईडी" और "परियोजना संख्या" देख सकते हैं। प्रोजेक्ट आईडी अब मास्टर- xxxxx-1234 की तरह संख्यात्मक नहीं बल्कि अल्फा न्यूमेरिक है । प्रोजेक्ट नंबर 123456789100 की तरह 11 अंकों की संख्या है।

परियोजना डैशबॉर्ड

2- यहां तक ​​कि जब आप ब्राउज़र लिंक का निरीक्षण करते हैं, तो आप इसे निम्न प्रकार से देख सकते हैं: https: // कंसोल.developers.google.com / project / master-xxxxx-1234

तो मास्टर-XXXXX-1234 SENDER_ID है (कुछ स्थानों पर परियोजना आईडी के रूप में संदर्भित)? नहीं।

आपको GCM में प्रोजेक्ट आईडी के रूप में प्रोजेक्ट नंबर का उपयोग करना होगा।

3- आप यह जांच कर सकते हैं कि प्रोजेक्ट आईडी का उपयोग प्रोजेक्ट आईडी के रूप में कैसे किया जा रहा है?

एपीआई डैशबॉर्ड पर। (url: https://code.google.com/apis/console/b/0/?noredirect#project:12345678900 - जहां 12345678900 प्रोजेक्ट डैशबोर्ड पर आपका प्रोजेक्ट नंबर है।

गूगल एपी डैशबोर्ड

सारांश: प्रोजेक्ट डैशबोर्ड में प्रोजेक्ट आईडी और एपीआई डैशबोर्ड अलग-अलग हैं। प्रोजेक्ट डैशबॉर्ड में प्रोजेक्ट नंबर एपीआई डैशबोर्ड में प्रोजेक्ट आईडी के रूप में और प्रोजेक्ट डैशबॉर्ड में प्रोजेक्ट आईडी एपीआई डैशबोर्ड में प्रोजेक्ट नाम के रूप में उपयोग किया जाता है। इसलिए जब हम डेवलपर कंसोल में प्रोजेक्ट बनाते हैं तो प्रोजेक्ट डैशबोर्ड में दिखाया गया प्रोजेक्ट नंबर GCM में SENDER_ID के रूप में उपयोग किया जाता है।


4

डेवलपर्स कंसोल के नवीनतम संस्करण में "डैशबोर्ड" पर जाएं, "प्रोजेक्ट: टर्टल पावर" के तहत ड्रॉप डाउन एरो पर क्लिक करें और आप प्रोजेक्ट नंबर को वहीं देख सकते हैं! इसे अपने SENDER_ID के रूप में उपयोग करें

(नकली परियोजना तो यह भी = पी की कोशिश नहीं करते)

यहाँ छवि विवरण दर्ज करें



1

हमने इसे जानने के लिए घंटों बिताए। समस्या यह थी कि हमारे एंड्रॉइड मेनिफ़ेस्ट में प्रेषक आईडी शामिल नहीं था!



-3

SENDER_ID जो आप उपयोग कर रहे हैं वह प्राधिकरण कुंजी के अलावा और कुछ नहीं है। आप अपनी परियोजनाओं में Google API कंसोल पृष्ठ URL पर SENDER_ID पा सकते हैं

https://code.google.com/apis/console/#project:8543162367

यहाँ 8543162367 आपका SENDER_ID होगा, और यह भी कि प्रोजेक्ट Id अब उसका अल्फा-न्यूमेरिक या केवल न्यूमेरिक या केवल अल्फाबेटिक कुछ भी नहीं है, लेकिन इसकी स्थिति मेरे द्वारा दर्शाई गई है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.