2012-12-11 26 views
5

एंड्रॉइड डिवाइस केवल मानचित्र के लिए टाइल्स दिखाता है। व्यापक रूप से रिपोर्ट किया जाता है।Google मानचित्र एंड्रॉइड डिवाइस पर नहीं दिख रहे हैं

https://developers.google.com/maps/documentation/android/start 

मैं निम्नलिखित किया:

1) ग्रहण में, मैं रिलीज मोड में प्रवेश किया हुआ मैं इस लिंक के निर्देशों का पालन। मैं फ़ाइल> निर्यात का चयन करता हूं। चयनित निर्यात एंड्रॉइड एप्लिकेशन, और अगला क्लिक किया। एक नया कीस्टोर बनाया गया। फिर Google play पर एपीके अपलोड किया।

2) एंड्रॉइड ऐप डिवाइस पर काम करता था लेकिन मानचित्र नहीं दिखाया गया था। यह सिर्फ टाइल्स दिखाया।

3) इसलिए मैंने उपरोक्त लिंक में दिए गए निर्देशों का पालन किया।

4) मैंने ऊपर बनाई गई कीस्टोर फ़ाइल को स्थित किया है। मेरी कीस्टोर को ziggy.keystore कहा जाता है और उपनाम ziggy keystore है।

5) मैं पर मैक OSX टर्मिनल में इस भाग गया:

keytool -list -v -keystore ziggy.keystore -alias ziggy\ keystroke 

6) उपरोक्त आदेश उत्पादन है कि एक लाइन है कि प्रमाण पत्र के SHA-1 फ़िंगरप्रिंट शामिल होता पैदा करता है। फिंगरप्रिंट कॉलन से अलग 20 दो अंकों वाले हेक्साडेसिमल संख्याओं का अनुक्रम है।

7) अब जब कि मैं पर हस्ताक्षर प्रमाणपत्र फ़िंगरप्रिंट है, मैं Google API कंसोल में आवेदन का प्रोजेक्ट बनाया। एक ब्राउज़र में, मैं https://code.google.com/apis/console/

8) मैं प्रोजेक्ट बनाएं क्लिक किया पर नेविगेट। मैंने इसे एपीआई प्रोजेक्ट नाम दिया। मैं मुख्य विंडो में एपीआई और सेवाओं की एक सूची देखता हूं।

9) जब तक मैं Google मानचित्र एंड्रॉइड एपीआई v2 नहीं देखता तब तक मैं नीचे स्क्रॉल करता हूं। प्रवेश के अधिकार के लिए, मैंने स्विच सूचक पर क्लिक किया ताकि यह चालू हो। मैं सेवा की शर्तों पर सहमत हुआ और स्वीकार कर लिया।

10) बाएं नेविगेशन बार में, मैंने एपीआई एक्सेस पर क्लिक किया। परिणामी पृष्ठ में, मैंने नई एंड्रॉइड कुंजी बनाएं पर क्लिक किया। परिणामी संवाद में, मैंने SHA-1 फिंगरप्रिंट दर्ज किया, फिर एक अर्धविराम, फिर एप्लिकेशन का पैकेज नाम।

11) मैंने एपीआई कुंजी की प्रतिलिपि बनाई। मैंने एंड्रॉइडमैनीफेस्ट.एक्सएमएल फ़ाइल में निहित मेरे एप्लिकेशन का मैनिफेस्ट खोला। और तत्व के एक बच्चे के रूप में निम्नलिखित तत्व जोड़, क्लोज़िंग टैग के पहले यह डालने से:

<meta-data 
    android:name="com.google.android.maps.v2.API_KEY" 
    android:value="your_api_key"/> 

* ध्यान दें कि मैं अपने वास्तविक api कुंजी का इस्तेमाल किया।

12) मैं इस रूप में अच्छी तरह कहा:

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 


<permission 
     android:name="com.otl.AndroidRemoteApp1.permission.MAPS_RECEIVE" 
     android:protectionLevel="signature"/> 
    <uses-permission android:name="com.otl.AndroidRemoteApp1.permission.MAPS_RECEIVE"/> 

<uses-feature 
android:glEsVersion="0x00020000" 
android:required="true"/>  

13) तब मेरे ShowMapActivity.java में:

super.onCreate(savedInstanceState); 
    setContentView(R.layout.show_map); 
      mapView = (MapView) findViewById(R.id.mapview); 

    myMapController = mapView.getController(); 
    mapView.setBuiltInZoomControls(true); 

    Drawable marker=getResources().getDrawable(android.R.drawable.star_big_on); 
      ... 

14) तब मेरे show_map.xml फ़ाइल में:

<com.google.android.maps.MapView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/mapview" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:clickable="true" 
    android:state_enabled="true" 
    android:apiKey="my_api_key" 
/> 

* मैंने my_api_key को वास्तविक कुंजी के साथ बदल दिया।

तो मैं सभी निर्देशों का पालन किया और उसके बाद जब मैं एक Android डिवाइस पर एप्लिकेशन डाउनलोड किया है, यह नक्शा नहीं दिखा था।यह सिर्फ टाइल्स चीज दिखाता है, जिसे पहले बताया गया है।

मुझे यकीन नहीं है कि यह काम करने के लिए मुझे कौन सा कदम याद आया।

+0

असल में Google मानचित्र को MD5 कुंजी की आवश्यकता होती है। –

+1

मैं भी एक ही समस्या से अटक गया हूँ। मैंने Google दस्तावेज़ों से सभी चरणों का पालन किया है। अभी भी कोई सफलता नहीं है। – Shrikant

उत्तर

1

कॉन्फ़िगरेशन चरण मेरे लिए अच्छा लग रहा है।

लेकिन मुझे लगता है कि आप लाइब्रेरी के साथ पुराने तरीके से बातचीत कर रहे हैं। मुझे पता है कि प्रलेखन कहता है कि MapView को क्रियाओं में जोड़ा और नियंत्रित किया जा सकता है, लेकिन मैं नए GoogleMap और MapFragment दृष्टिकोण का उपयोग करने का प्रयास करूंगा। https://developers.google.com/maps/documentation/android/map#add_a_map_to_an_android_application

आप इसे करने की कोशिश की: मैं सच में यकीन है कि कैसे समर्थित "विस्तार MapActivity और हैंडलिंग MapView" इसके लिए प्रलेखन के पुस्तकालय

यहाँ की V2 पर हैं नहीं कर रहा हूँ?

+0

मैं चाहता हूं कि मेरा एप्लिकेशन एंड्रॉइड 2.2 संस्करण का समर्थन करे, इसलिए मैं MapFragment का उपयोग नहीं कर सकता। समाधान और क्या हो सकता है? – Shrikant

+0

आप कर सकते हैं। आपको इसे करने में सक्षम होने के लिए बस अपनी प्रोजेक्ट में समर्थन लाइब्रेरी को शामिल करने की आवश्यकता है। http://developer.android.com/tools/extras/support-library.html –

+0

यह मेरे लिए बहुत धन्यवाद। :) अब मेरे पास अक्षांश और अक्षांश की एक सूची है, मैं उन्हें मानचित्र पर दिखाना चाहता हूं, क्या आप मुझे बता सकते हैं कि MapFragment का उपयोग करके उन्हें कैसे दिखाया जाए? – Shrikant

0

बहुत विस्तृत विवरण के लिए धन्यवाद। मुद्दा यह है कि आप एंड्रॉइड v2 एपीआई के लिए सेटअप प्रक्रिया एफ का उपयोग कर रहे हैं लेकिन v1 एपीआई से कक्षाएं हैं। चूंकि v1 अब बहिष्कृत है, इसलिए अत्यधिक सलाह दी जाती है कि आप v2 का उपयोग करें। यदि आप Google Play सेवाओं के निर्माण के बारे में शेष निर्देशों का पालन करते हैं तो आपको ठीक होना चाहिए।

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