दिलचस्प पोस्ट
सी ++ 11 ने एक मानकीकृत स्मृति मॉडल पेश किया इसका क्या मतलब है? और यह C ++ प्रोग्रामिंग को प्रभावित करने वाला है? conda, condi, conde, condu प्लगइन को स्थापित करने में त्रुटि का प्रयास करें संपर्क फोटो यूआरआई कैसे प्राप्त करें एंड्रॉइड में उपलब्ध / इंस्टॉल किए गए फोंट की सूची कैसे प्राप्त करें? पायथन में datetime.time को एन सेकेंड जोड़ने का मानक तरीका क्या है? एक HTTP प्राप्त करें के साथ एक अर्रे भेजें इनर दो पाठ फ़ाइलों में शामिल होते हैं डॉस बैच में तार्किक ऑपरेटरों ("और", "या") रेलवे 4 में ऊपरी भाग में शामिल हों एक स्ट्रिंग में आउटपुटस्ट्रीम प्राप्त करें C ++ 11 को C99 के रूप में नामित initializer सूचियों का समर्थन क्यों नहीं करता है? जेड इंडेक्स इंटरनेट एक्सप्लोरर में iframe में पीडीएफ के साथ काम नहीं करता है टेक्सरेआ में लाइनों की सीमा और jQuery का उपयोग करने वाली डिस्प्ले लाइन गिनती एक टर्मिनल प्रोग्राम लिनक्स सी / सी ++ का क्लियरिंग आउटपुट

प्ले स्टोर पर प्रकाशित ऐप Google मानचित्र एपीआई और फेसबुक एपीआई के साथ संवाद नहीं कर सकता है

मैंने एंड्रॉइड स्टूडियो के साथ एक हस्ताक्षरित एपीके बनाया है, और मैंने Google डेवलपर कंसोल और फेसबुक को मेरे एसएएचए 1 फिंगरप्रिंट और मेरे ऐप में रिश्तेदार एपीआई कंसोल में जोड़ा है। अगर मैं यूएसबी के माध्यम से अपना हस्ताक्षरित एपीके अपलोड करता हूं तो सब कुछ ठीक काम करता है, इसे स्थापित करने के बाद नक्शे एपीआई और फेसबुक एपीआई अच्छी तरह से काम करता है। अगर मैं Play Store पर एक ही एपीके अपलोड करता हूं, जब मैं फेसबुक के साथ लॉगिन करने की कोशिश करता हूं, तो यह कहता है "अमान्य कुंजी हैश। कुंजी हैश ब्लाबलबला किसी भी संग्रहीत के साथ मेल नहीं खाती .." तो अगर मैं फेसबुक के बिना लॉग करता हूं, तो मैं अपने गूगल मानचित्र भी नहीं पा सकता हूं; यह मुझे सोचने के लिए सुराग करता है कि एपीके प्ले स्टोर पर भरी हुई फिंगरप्रिंट या उस तरह की कुछ चीजें बदलती हैं। मैंने एंड्रॉइड डेवलपर्स और स्टैक ओवरफ्लो पर सभी चीजों की जांच की, लेकिन मैं इसे काम नहीं कर सकता, क्योंकि स्ट्रैज की बात यह है कि जब तक मैं इसे Play Store पर लोड नहीं करता तब तक इस पर हस्ताक्षर किए रिलीज एपीके अच्छी तरह काम करता है।

Solutions Collecting From Web of "प्ले स्टोर पर प्रकाशित ऐप Google मानचित्र एपीआई और फेसबुक एपीआई के साथ संवाद नहीं कर सकता है"

यहां इसका जवाब दिया गया है कि आप Google मानचित्र क्यों नहीं देख सकते?

मैंने हाल ही में Google Play स्टोर पर एपीके अपलोड किया है और मुझे प्ले कंसोल की जांच के बाद एक ही समस्या का सामना करना पड़ा, मुझे इस समस्या का समाधान मिला।

उनकी आपकी कुंजी के साथ कोई समस्या नहीं है लेकिन समस्या आपकी SHA-1 के साथ है आपने अपने एसएएच -1 के साथ अपने एपीके पर हस्ताक्षर किए हैं जो ठीक है और फिर एपीके अपलोड भी ठीक है।

लेकिन जब आप एसएएच -1 के साथ अपने एपीके पर हस्ताक्षर करते हुए प्ले कंसोल के नए अपडेट के अनुसार और एपीके अपलोड करते हैं, तो यह केवल आपके द्वारा हस्ताक्षरित होता है लेकिन नए अपडेट के अनुसार इसे अधिक सुरक्षा के लिए Google Play द्वारा भी हस्ताक्षर किया जाता है। यहां Google Play अनुभाग का एक हिस्सा देखें:

Google Play ऐप साइनिंग के साथ: आप अपने अपलोड कुंजी के साथ अपने ऐप पर हस्ताक्षर करते हैं। फिर, Google अपलोड कुंजी हस्ताक्षर को सत्यापित और हटाता है अंत में, Google आपके द्वारा प्रदान किए गए मूल ऐप हस्ताक्षर कुंजी के साथ ऐप को फिर से संकेत देता है और उपयोगकर्ता को आपके ऐप को बचाता है।

आप यहां प्रलेख का उल्लेख कर सकते हैं ।

अब, आपके प्रश्न का उत्तर एपीके को सफलतापूर्वक अपलोड करने के बाद आप देख सकते हैं कि दो SHA-1 के साथ अनुभाग में 1 SHA-1 Google ने अपना बनाया है और दूसरा एसएचए-1 इसका अपना है

तो बस Google SHA-1 की प्रतिलिपि बनाएं और उसे अपने कंसोल में पेस्ट करें जहां आप Google मानचित्र एपीआई कुंजी उत्पन्न करते हैं।

@ एंडी डेवलपर से प्रेरणा के साथ, मेरे ऐप Google Play पर अपलोड किए जाने के बाद मैं नक्शा प्रदर्शित कर सकता था ये कदम थे:

  1. अपना ऐप Google Play पर अपलोड करें (एपीके फ़ाइल पर हस्ताक्षर)
  2. ऐप सबमिट और स्वीकृति मिलने के बाद, Google Play Console से अपना ऐप चुनें
  3. डेवलपमेंट टूल्स पर जाएं -> रिलीज मैनेजमेंट -> ऐप साइनिंग

Google Play कंसोल में ऐप साइनिंग

  1. एप अपलोड करने के बाद Google Play ने जारी किया गया पहला शॉ-1 प्रमाण पत्र कॉपी करें
  2. Google कंसोल पर जाएं और अपना प्रोजेक्ट चुनें।
  3. अपनी API- कुंजी का चयन करें, अपनी कुंजी को प्रतिबंधित करें, और पैकेज नाम के बाद SHA-1 पेस्ट करें।

Google Console में SHA-1 पेस्ट करें

  1. सहेजें दबाएं, कुछ मिनट प्रतीक्षा करें और आपके ऐप को Google मानचित्र दिखाना चाहिए

आपके एप्लिकेशन के डिबग और रिलीज़ बिल्ड प्रकार दो अलग-अलग कुंजी के साथ हस्ताक्षर किए गए हैं।

अपनी सेवाओं तक पहुंच की अनुमति देने के लिए आपको उनके लिए Google मानचित्र और फेसबुक में दोनों कुंजी पंजीकृत करने की आवश्यकता है

हां, जाहिर है कि मानचित्र हस्ताक्षरित एपीके में लोड नहीं करेगा।

उपाय:

जब आप Google API कंसोल में API कुंजी उत्पन्न करते हैं, तो आपको एसएचए कुंजी के साथ कुंजी को प्रतिबंधित करने की आवश्यकता होती है

लेकिन हस्ताक्षरित एपीके बनाने के बाद आपको रिलीज़ मोड एसएचए कुंजी लेनी होगी और एपीआई के लिए एपीआई कंसोल में जोड़ना होगा यहां छवि विवरण दर्ज करें

मैंने चित्र संलग्न किया है, देखो

आशा करता हूँ की ये काम करेगा।

फेसबुक के लिए हैश कुंजी उत्पन्न करने के लिए नीचे कोड का उपयोग करें:

 try { PackageInfo info = getPackageManager().getPackageInfo( "YOUR PACKAGE NAME", PackageManager.GET_SIGNATURES); for (Signature signature : info.signatures) { MessageDigest md = MessageDigest.getInstance("SHA"); md.update(signature.toByteArray()); Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT)); } } catch (PackageManager.NameNotFoundException e) { } catch (NoSuchAlgorithmException e) { } 

एक बार जब आप हैश कोड प्राप्त करते हैं, तो उसे उसी तरह पेस्ट करें कि वह फेसबुक डेवलपर कंसोल में आगे बढ़े और आगे बढ़ें

आशा करता हूँ की ये काम करेगा:)

अंत में, समस्या यह थी कि एपीआई द्वारा प्रदत्त फाइल google_maps_api.xml रिलीज़ में लोड नहीं हुई थी, इसलिए मैं

मैंने ऐसा किया:

 buildTypes { debug { manifestPlaceholders = [mapsKey: "AIzaSyB8o9KzQ5YN8U8AFS************"] } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' manifestPlaceholders = [mapsKey: "AIzaSyApLacqgkdIR7uEpcf*****************"] } } 

और फिर मेरे एंड्रॉइड मैनिफेस्ट में

 <meta-data android:name="com.google.android.geo.API_KEY" android:value="${mapsKey}" /> 

संदर्भ: https://stackoverflow.com/a/33917692/3235560

तो मैंने दाएं शाए फिंगरप्रिंट, एक डीबग और दूसरा Google Play कंसोल द्वारा दिए गए दो अलग-अलग चाबियां पंजीकृत कीं (अपलोड प्रमाणपत्र नहीं, बल्कि Google द्वारा उत्पन्न अन्य)।

प्रेरणा के लिए ज़ुहाद और एंडी डेवलपर के लिए बहुत बहुत धन्यवाद