2013-08-23 4 views
10

मैं एंड्रॉइड एप्लिकेशन में Google Map Android API v2 के साथ काम कर रहा हूं।Google मानचित्र एंड्रॉइड एपीआई v2 प्ले स्टोर एप्लिकेशन में मानचित्र प्रदर्शित नहीं कर सकता

यह एक अलग डिवाइस पर हस्ताक्षरित एपीके के साथ ठीक काम करता है। लेकिन जब मैंने एपीके पर हस्ताक्षर किए हैं और Play Store पर अपना एप्लिकेशन अपलोड किया है तो डाउनलोड किया गया एप्लिकेशन मानचित्र के बजाय एक सफेद स्क्रीन प्रदर्शित करता है।

+1

हस्ताक्षरित एपीके डिवाइस में तब तक नहीं चलेगा जब तक आप –

+0

पर हस्ताक्षर नहीं करते हैं, मुझे आशा है कि आप उसी कीस्टोर के साथ उंगली sh1 बना लेंगे, तो यह काम करेगा डीबग कीस्टोर के साथ नहीं। –

+0

या @ सुनील आप सही हैं। मैं debug.keystore – Harshid

उत्तर

13

आप किस प्रकार की कीस्टोर का उपयोग कर रहे हैं? दो कुंजी हैं। Debug और release key। यदि आप डीबग कुंजी का उपयोग करते हैं और एंड्रॉइड मार्केट में अपलोड करते हैं, तो नक्शा खाली दिखाई देगा। जब आप अपने एपीके पर हस्ताक्षर करते हैं तो रिलीज कुंजी का उपयोग करें।

रिलीज कुंजी प्रक्रिया

चरण 1:

कहते हैं, उदाहरण के लिए आपके apk नाम एक है और आप पर हस्ताक्षर करने और A.apk यानी A.keystore के लिए एक कीस्ट्रोक पैदा कर रहे कुछ ड्राइव में बनाया जाएगा स्थान। चलो इसे ई ड्राइव में मानते हैं।

चरण 2:

अब सी ड्राइव में JDK करने का पता लगाने (विंडोज़ के लिए ध्यान में रखते हुए और सी ड्राइव बताए)

C:\Program Files\Java\jdk1.7.0\bin>keytool -list -v -keystore E:\A.keystore -alias A 

तो यह SHA-1 फिंगर प्रिंट पैदा करेगा।

+0

काम करेगा यह आकर्षण की तरह काम करता है। – Harshid

+0

आपका स्वागत है। हैप्पी कोडिंग @ हार्शीड – Shadow

+0

मैंने ये कदम उठाए। मैंने एसएचए -1 लिया और एपीआई कंसोल में अपने Google मैप ऐप का पैकेज नाम जोड़ा और इसे api_key जेनरेट किया और manifest.xml में जोड़ा गया। और ग्रहण से मेरे डिवाइस पर चलाएं, नक्शा अच्छी तरह से काम करता है लेकिन जब मैंने स्टोर खेलने के लिए एपीके अपलोड किया, तो यह अब भी मुझे खाली दृश्य देता है। – Eman87

0

अपनी रिलीज बनाने के लिए उपयोग की जाने वाली कुंजी का उपयोग करके एंड्रॉइड मानचित्र के लिए रिलीज कुंजी बनाएं। यह काम करेगा।

+0

में अपलोड के साथ डिवाइस में रिलीसा कुंजी के साथ मानचित्र देखने में सक्षम हूं। तुम्हें नहीं मिला क्या आप और समझा सकते हैं? –

8

ऐसा इसलिए होता है क्योंकि MapApi कुंजी हस्ताक्षरित एपीके और हस्ताक्षरित एपीके के लिए अलग है।

आपको अपने कीस्टोर का उपयोग करके SHA1 कुंजी उत्पन्न करना है जिसके साथ आपने अपना एपीके गाया है।

चिंता न करें बस चरणों का पालन करें।

खुला टर्मिनल और आग आदेश

Keytool -List -alias -keystore -v

उर्फ ​​नाम: ABCD

बनाने का दिनांक: 15 मार्च, 2013

प्रविष्टि प्रकार : PrivateKeyEntry

प्रमाणपत्र श्रृंखला लंबाई: 1

प्रमाणपत्र [1]:

मालिक: सीएन = एबीसी, OU = एबीसी, हे = एबीसी, एल = एबीसी, अनुसूचित जनजाति = एबीसी, सी = 91

जारीकर्ता: सीएन = एबीसी, OU = एबीसी, हे = एबीसी, एल = एबीसी, अनुसूचित जनजाति = एबीसी, सी = 91

सीरियल नंबर: 5142a21d

मान्य से: शुक्र मार्च 15 09:52:53 IST 2013 तक: शनि मार्च 03 09:52 : 53 आईएसटी 2063

प्रमाणपत्र फिंगरप्रिंट:

MD5: D3:CA:6D:F4:5E:B6:E1:48:F1:D6:DB:C4:67:F5:C3:B2 

SHA1: 03:D8:EF:05:04:CF:06:86:15:1A:F1:D3:B1:18:46:xx:xx:xx:xx:xx 

Signature algorithm name: SHA1withRSA 

Version: 3 

सूची से ले SHA1 कुंजी

अपने Google API कंसोल खोलें और नई कुंजी बना और अपने PackageName

03 के साथ SHA1 कुंजी दे: D8: एफई: 05: 04: सीएफ: 06: 86: 15: 1 ए: एफ 1: डी 3: बी 1: 18: 46: एफ 5: एक्सएक्स: एक्सएक्स: एक्सएक्स: एक्सएक्स; yourpackagename

अपने कोड में नया नक्शा एपीआई कुंजी रखें।

+0

आपका उत्तर सही है लेकिन कुछ अन्य उपयोगकर्ता मुझे पहले जवाब देते हैं। + 1 आपके लिए – Harshid

+0

मैंने इस समाधान को मेरे लिए काम नहीं किया है –

+0

@madhusudhan keytool -list -alias MyAndroidKey -keystore C: \ Users \ myUser \ .android \ android। jks -storepass mystorepass -keypass mykeypass – iOSAndroidWindowsMobileAppsDev

1

क्या मैं SHA1 कुंजी के लिए इस्तेमाल किया है .. enter image description here

डिबग कुंजी के लिए

वरीयता शा 1 फिंगर प्रिंट से उपयोग करने की आवश्यकता है

enter image description here

+0

इस प्रक्रिया के लिए जाने की कोई आवश्यकता नहीं है। ग्रहण में बहुत सरल है। help-> वरीयता-> build-> आप डीबग के लिए/sha1 उंगली प्रिंट ढूंढ सकते हैं :) और जब आप निर्यात करते हैं तो रिलीज के लिए, अंतिम प्रक्रिया जो आप पा सकते हैं वह उंगली प्रिंट करेगा :) – Shadow

+0

हाँ आपका अधिकार। असल में उपर्युक्त समाधान मेरे लिए काम नहीं करता है। मैंने पिछली स्क्रीन में हस्ताक्षरित एपीके निर्यात करते समय उपयोग किया है, यह SHA1 और MD5 दिखाता है। मैंने उस SHA1 का उपयोग किया है। क्या मैं सही हू? –

+0

समस्या स्थानीय रूप से यह काम नहीं कर रही है। हस्ताक्षर किए गए एपीके पर यह काम कर रहा है –

0

बस src/रिलीज निर्देशिका के तहत अपने google_maps_key जाँच , आपको Google कंसोल से अपनी खुद की कुंजी रखना चाहिए (जिसे आपने रिलीज फिंगरप्रिंट SHA1 के साथ प्राप्त किया था)।

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