2012-12-05 19 views
21

में समस्या होगी: मैं SupportMapFragmentcom.google.android.gms.maps.SupportMapFragment से उपयोग करने का प्रयास करता हूं जो Google मानचित्र एंड्रॉइड एपीआई v2 का हिस्सा है।google-play-services.jar प्रोजेक्ट निर्भरता को कैसे जोड़ा जाए, इसलिए मेरा प्रोजेक्ट चलाएगा और मानचित्र को

मेरा पहला दृष्टिकोण Android-SDK \ एक्स्ट्रा कलाकार \ गूगल से ग्रहण करने के लिए परियोजना को जोड़ने के लिए था \ google_play_services \ libproject \ गूगल प्ले-services_lib स्थान और गुण में संदर्भित परियोजना के रूप में सेट -> परियोजना के मेनू सन्दर्भ MyApp। मैंने परियोजना को जावा बिल्ड पथ/प्रोजेक्ट्स में भी जोड़ा। एक्लिप्स से त्रुटि संकेतक गायब हो गए लेकिन जब मैंने अपना ऐप चलाने की कोशिश की तो मुझे NoClassDefFoundError अपवाद मिला।

तो मेरी दूसरा दृष्टिकोण गूगल प्ले-services_lib से जार फ़ाइल की प्रतिलिपि करने/libs अपने प्रोजेक्ट के libs निर्देशिका के लिए था। MyApp सफलतापूर्वक शुरू हुआ लेकिन LogCat में मैं मृत कोड देख सकता हूं ... कुछ संदेश तो मुझे लगता है कि जार फ़ाइल को किसी अन्य तरीके से संदर्भित किया जाना चाहिए।

और अब मैं उलझन में हूं और थक गया हूं ..
शायद एंड्रॉइड में अनुभवी कोई और मुझे बता सकता है कि मुझे क्या करना चाहिए?

उत्तर

11

मैं क्या किया ग्रहण कार्यक्षेत्र में एक नई परियोजना है कि आयात है, और उस की कि पथ होना था

Android-SDK-MacOSX/अतिरिक्त/गूगल/google_play_services/libproject/google-प्ले-services_lib

और अपनी परियोजना में लाइब्रेरी के रूप में जोड़ें .. यह .. सरल !! आपको अपनी प्रोजेक्ट में समर्थन लाइब्रेरी जोड़ने की आवश्यकता हो सकती है।

+0

20 मिनट अब –

+0

ऊपर स्थान में दो साल पहले पोस्ट किया जाता है के लिए इस lib का स्थान खोज, अब आप एसडीके/अतिरिक्त/गूगल/google_play_services/libproject –

4

सावधान रहें, निम्न चरणों का पालन करें और अपने समय

  1. अधिकार अपने प्रोजेक्ट एक्सप्लोरर पर क्लिक करें सहेजें।

  2. करें New-> परियोजना -> Android आवेदन परियोजना केवल इस मार्ग तक मौजूदा कोड

  3. ब्राउज़ से - "C: \ Users ** अपने पथ ** \ Local \ एंड्रॉयड \ Android-SDK \ एक्स्ट्रा कलाकार \ \ google_play_services गूगल "

  4. केवल तक सावधान Brose हो - google_play_services और नहीं google_play_services_lib

  5. और इस तरह से आप आयात करना Google Play सेवा lib में सक्षम हैं तक।

मुझे बताएं कि क्या आपके बारे में कोई प्रश्न है।

धन्यवाद

+0

LongMiles में इसे पा सकते हैं मैं गूगल आयात करने के लिए कोशिश कर रहा हूँ था सेवाओं को चलाने और इसे आयात करने में कठिनाई का सामना करना पड़ रहा है। यह कहता है कि "आयात करने के लिए कोई परियोजना नहीं मिली है। क्या आप कृपया इस बारे में मेरी मदद कर सकते हैं? – bhejaFry

+0

बस मेरे ऊपर निर्दिष्ट चरणों का पालन करें, जैसा कि यह है और आपकी समस्या निश्चित रूप से हल हो जाएगी। –

+0

मैं टाइटेनियम स्टूडियो का उपयोग कर रहा हूं, और मैं ' आयात या प्रोजेक्ट के गुणों में क्लिक करने के बाद कोई भी एंड्रॉइड मेनू नहीं देखें ... – ivy

14

त्वरित आरंभ गाइड कि keyboardsurfer संदर्भ अगर आप ठीक ढंग से निर्माण करने के लिए अपनी परियोजना प्राप्त करने की आवश्यकता के लिए काम करेंगे, लेकिन यह आपके ग्रहण कार्यक्षेत्र में एक डमी गूगल प्ले-सेवाओं परियोजना के साथ आप छोड़ देता है, और यह नहीं करता है Google Play Services Javadocs पर एक्लिप्स को ठीक से लिंक नहीं करें।

यहाँ है कि मैं क्या बजाय किया है:

  1. स्थापित करें गूगल Android Maps V2 Quick Start ऊपर संदर्भित निर्देश, या Setup Google Play Services SDK करने के लिए निर्देशों का उपयोग कर Play सेवाओं एसडीके, लेकिन नहीं गूगल प्ले जोड़ने के लिए निर्देशों का पालन करें आपकी परियोजना में सेवाएं।

  2. पैकेज एक्सप्लोरर में प्रोजेक्ट पर राइट क्लिक करें, अपनी प्रोजेक्ट के गुणों को खोलने के लिए प्रॉपर्टी का चयन करें।

  3. (केवल अगर आप पहले से ही त्वरित आरंभ गाइड में निर्देशों का पालन किया!) गूगल प्ले-सेवाओं परियोजना पर निर्भरता निकालें:

    • एंड्रॉयड श्रेणी पर क्लिक करें और का संदर्भ हटा दें गूगल-प्ले-सर्विसेज प्रोजेक्ट।

    • जावा बिल्ड पथ श्रेणी पर क्लिक करें, फिर प्रोजेक्ट टैब और Google-play-Services प्रोजेक्ट के संदर्भ को हटा दें।

  4. जावा बिल्ड पथ श्रेणी, फिर लाइब्रेरी टैब पर क्लिक करें।

  5. बाहरी जार जोड़ें क्लिक करें ... और google-play-services.jar फ़ाइल का चयन करें। यह [आपकी एडीटी निर्देशिका] \ sdk \ extras \ google \ google_play_services \ libproject \ google-play-services_lib \ libs में होना चाहिए।

  6. नई google-play-services.jar प्रविष्टि के बगल में तीर पर क्लिक करें, और जावाडोक स्थान आइटम का चयन करें।

  7. संपादित करें पर क्लिक करें ... और Google Play Services Javadocs वाले फ़ोल्डर का चयन करें। यह [आपकी एडीटी निर्देशिका] \ sdk \ extras \ google \ google_play_services \ docs \ संदर्भ में होना चाहिए।

  8. अभी भी जावा बिल्ड पथ श्रेणी में, ऑर्डर और निर्यात टैब पर क्लिक करें। Google-play-services.jar प्रविष्टि के बगल में स्थित बॉक्स को चेक करें।

  9. अपनी परियोजना संपत्तियों को सहेजने के लिए ठीक क्लिक करें।

आपकी परियोजना के पास अब Google Play Services लाइब्रेरी तक पहुंच होनी चाहिए, और जावाडॉक्स को ग्रहण में ठीक से प्रदर्शित होना चाहिए।

+0

जब मैं ऐसा करता हूं, तो जार जोड़ना और आयातित प्रोजेक्ट में किसी भी संदर्भ को छोड़कर, जैसा कि अन्य पोस्ट सुझाव देते हैं, मेरी परियोजना लाइब्रेरी के भीतर कुछ भी संदर्भ नहीं दे सकती है; त्रुटियों के कारण संकलित नहीं होगा। आप इसके आसपास कैसे हो रहे हैं? – wkhatch

+0

यह आपको '@ पूर्णांक/google_play_services_version' मान को मैनिफेस्ट में' मेटा-डेटा 'टैग के लिए आवश्यक मान को संदर्भित करने की अनुमति नहीं देता है। – Chris

+0

यह नहीं देगा निष्पादित करने के लिए नक्शे! – Devrath

3

यहां वर्णित कुछ समाधान मेरे लिए काम नहीं करते थे। अन्य ने किया, हालांकि उन्होंने रनटाइम पर चेतावनियां उत्पन्न कीं और जावाडोक अभी भी जुड़ा हुआ नहीं था। कुछ प्रयोग करने के बाद, मैं इसे हल करने में कामयाब रहा। कदम हैं:

  1. स्थापित Google Play सेवाओं रूपAndroid Developers पर की सिफारिश की।

  2. Android Developers पर अनुशंसित अपनी परियोजना सेट करें।

  3. यदि आपने 1 और 2 का पालन किया है, तो आपको अपने कार्यक्षेत्र में दो परियोजनाएं देखना चाहिए: आपकी परियोजना और Google- play-services_lib प्रोजेक्ट।docs फ़ोल्डर की प्रतिलिपि बनाएँ जिसमें <android-sdk>/extras/google/google_play_services/ से libs फ़ोल्डर में javadoc शामिल है।

  4. google-play-services.jar<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/libs से अपनी परियोजना के 'libs' फ़ोल्डर में कॉपी करें।

  5. google-play-services_lib परियोजना में, संपादित करें libs/ google-play-services.jar.properties। <path>doc=<path> में फ़ोल्डर docs, जो आप ग्रहण में कदम 3.

  6. में बनाया का सबफ़ोल्डर reference पर ले जाना चाहिए, परियोजना>स्वच्छ है। हो गया, जावाडोक अब जुड़ा हुआ है।

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