दिलचस्प पोस्ट
खूबसूरत सूप दृश्यमान वेबपेज पाठ पकड़ो SQL डेटाबेस तालिका में nth पंक्ति का चयन कैसे करें? विस्मयादिबोधक चिह्न समारोह से पहले क्या करता है? जब 'बैक' बटन को एक नवबार पर दबाया जाता है, तब पता लगा रहा है 64 बिट विंडो पर पायथन 32-बिट स्मृति सीमाएं संपीड़न के साथ जेपीजी को पीएनजी कन्वर्ट करने के लिए PHP का उपयोग करें? यह कोड कॉपी कन्स्ट्रक्टर को कॉल करने का प्रयास क्यों कर रहा है? एंड्रॉइड में एक अनुरोध में एक छवि और ऑडियो अपलोड करें आप matplotlib के साथ आये गये आंकड़े के आकार को कैसे बदल सकते हैं? दृश्य या आंशिक दृश्यों से लेआउट शीर्ष पर सीएसएस या जावास्क्रिप्ट फाइलें जोड़ें एकत्रीकरण बनाम रचना __builtin_offsetof ऑपरेटर का उद्देश्य और वापसी प्रकार क्या है? एक चर की सी ++ परिभाषाएं एक जावास्क्रिप्ट चर एक डॉलर के संकेत के साथ शुरू क्यों होगा? जावा: प्राधिकरण के साथ अनुरोध पोस्ट करने के लिए यूआरएल कनेक्शन का उपयोग कैसे करें?

एंड्रॉइड स्टूडियो – बाह्य पुस्तकालय / जार आयात करना

मैंने हाल ही में एंड्रॉइड स्टूडियो को एंड्रॉइड एप्लीकेशन विकसित करने के लिए डाउनलोड किया है (मैं एक्लिप्स से आ रहा हूं), और मुझे अपने खुद के प्रोजेक्ट के साथ-साथ बाहरी पुस्तकालयों और / या बाहरी जेआर फाइलों का उपयोग करने में समस्याएं आ रही हैं नोट : एंड्रॉइड स्टूडियो में खरोंच से बनाई गई एक नई एप्लीकेशन परियोजना पर निम्नलिखित परीक्षण किए गए थे

उदाहरण 1: जार आयात

  1. Google से Admobs SDK की एक नई कॉपी डाउनलोड करें

  2. लायब्रेरी जार GoogleAdMobAdsSdk-6.4.1.jar को प्रोजेक्ट / libs / फ़ोल्डर में कॉपी करें।

  3. परियोजना एक्सप्लोरर में, नए जोड़े गए पुस्तकालय पर क्लिक करें और 'लाइब्रेरी के रूप में जोड़ें' पर क्लिक करें।

तकनीकी तौर पर इस बिंदु पर सब कुछ काम करता है , आयात ठीक काम करता है , लेआउट एडिटर AdView विजेट का एक पूर्वावलोकन दिखाता है और ये सभी। केवल समस्या यह है कि यह सफलतापूर्वक संकलन नहीं करता है

कंसोल से लॉग इन करें:

 Gradle: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':APITests:compilePaidDebug'. > Compilation failed; see the compiler error output for details. * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'. 

मैंने gradlew compileDebug --stacktrace चलाने की कोशिश की, और समस्या यह हो रही है कि कोड और डिजाइन एडिटर दोनों में सफलतापूर्वक कक्षाओं को आयात करने में सक्षम होने के बावजूद, यह आयात को हल नहीं कर सकता लॉग का प्रासंगिक हिस्सा यहां दिया गया है: ( पूर्ण स्टैकट्र्रेस यहां )

 java:6: error: package com.google.ads does not exist import com.google.ads.AdRequest; java:7: error: package com.google.ads does not exist import com.google.ads.AdView; java:11: error: cannot find symbol AdView mAdView; symbol: class AdView location: class MainActivity java:22: error: cannot find symbol mAdView = (AdView)this.findViewById(R.id.adView); symbol: class AdView location: class MainActivity java:23: error: cannot find symbol mAdView.loadAd(new AdRequest()); symbol: class AdRequest location: class MainActivity 5 errors :Test:compileDebug FAILED 

लेकिन फिर से, आयात संपादक में अच्छी तरह से काम करता है, और निर्भरता वहां है:

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

यह भी ध्यान देने योग्य है कि कोई लाइब्रेरी / जेआर जोड़ने का प्रयास किए बिना, परियोजनाएं सिर्फ ठीक से संकलित करती हैं

मैंने फिर से इस तरह की नई लाइब को शामिल करने के लिए build.gradle फ़ाइल को संपादित करने की कोशिश की:

 dependencies { compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar') } 

इस बार, यह सफलतापूर्वक संकलन करता था, लेकिन अब ऐप्पल बंद हो जाता है, जाहिरा तौर पर, यह एप्लिकेशन पैकेज में लिब से एक विशिष्ट वर्ग नहीं मिल सकता है।

 Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.ads.AdView" on path: /data/app/com.foo.test-1.apk 

कोई विचार?

वेब के समाधान से एकत्रित समाधान "एंड्रॉइड स्टूडियो – बाह्य पुस्तकालय / जार आयात करना"

इसलिए,

एंड्रॉइड स्टूडियो 0.1.1 का प्रयोग करके अपनी परियोजना में एक जार को सुचारू रूप से आयात करने के लिए अनुसरण करने के लिए कदम:

  • Library.jar फ़ाइल को डाउनलोड करें और इसे अपने अनुप्रयोग परियोजना के अंदर अपने / लिब्स / फ़ोल्डर में कॉपी करें।
  • Build.gradle फ़ाइल खोलें और नई .jar फ़ाइल को शामिल करने के लिए अपनी निर्भरताएं संपादित करें:

compile files('libs/android-support-v4.jar', 'libs/GoogleAdMobAdsSdk-6.4.1.jar')

  • फ़ाइल -> परियोजना बंद करें
  • अपने प्रोजेक्ट के रूट स्थान पर एक कमांड प्रॉम्प्ट खोलें, अर्थात 'C:\Users\Username\AndroidStudioProjects\MyApplicationProject\'
  • कमांड प्रॉम्प्ट पर, gradlew clean , इसे पूरा होने तक प्रतीक्षा करें।
  • एंड्रॉइड स्टूडियो में अपने आवेदन परियोजना को फिर से खोलें
  • टेस्ट अपने आवेदन को चलाने के लिए और यह सफलतापूर्वक काम करना चाहिए

आपको प्रोजेक्ट को बंद करने और ग्रेड प्रारंभ करने के लिए कमांड लाइन पर जाने की आवश्यकता नहीं है: साफ। बिल्ड-> पुनर्निर्माण परियोजना पर जाएं

आसान तरीका है और यह मेरे लिए काम करता है एंड्रॉइड स्टूडियो का प्रयोग 0.8.2

  1. लिब्स के तहत जार फ़ाइल को खींचें
  2. प्रेस "ग्रैडल फाइलों के साथ सिंक प्रोजेक्ट" बटन दबाएं

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

"सरल समाधान यहां है"

1। उस फ़ोल्डर के लिए एपी निर्देशिका के अंतर्गत लिब्स नामक एक फ़ोल्डर बनाएं, जो उस प्रोजेक्ट में कोई भी निर्देशिका है ..

2 अपनी लाइब्रेरी को लिब्स फ़ोल्डर में पेस्ट करें

3। .You simply copy the JAR to your libs/ directory and then from inside Android Studio, right click the Jar that shows up under libs/ > Add As Library..

शांति!

यहां बताया गया है कि मैं इसे विशेष रूप से एडोब एसडीके जार फ़ाइल के लिए कैसे चला रहा हूं:

  1. अपनी jar फ़ाइल को लिब्स फ़ोल्डर में खींचें।
  2. jar फ़ाइल पर राइट क्लिक करें और लाइब्रेरी जोड़ें चुनें अब जार फ़ाइल एक लाइब्रेरी है जो उसे कंपाइल पथ में जोड़ती है
  3. build.gradle फ़ाइल खोलें (ध्यान दें, कम से कम दो build.gradle फाइलें हैं, रूट का उपयोग न करें, अपनी परियोजना के क्षेत्र में एक का उपयोग करें)।
  4. निर्भरता अनुभाग खोजें (मेरे लिए मैं एडमॉब- GoogleAdMobAdsSdk जार फ़ाइल की कोशिश कर रहा था) उदा।

     dependencies { compile files('libs/android-support-v4.jar','libs/GoogleAdMobAdsSdk-6.3.1.jar') } 
  5. पिछली बार settings.gradle में जाओ और यह सुनिश्चित करें कि ऐसा कुछ दिखता है:

     include ':yourproject', ':yourproject:libs:GoogleAdMobAdsSdk-6.3.1' 
  6. अंत में, बिल्ड पर जाएं -> पुनर्निर्माण परियोजना

आप एक्लिप्स से प्रोजेक्ट निर्यात करते हैं और फिर एंड्रॉइड स्टूडियो से इस परियोजना को आयात करते हैं, यह आपकी समस्या को हल करना चाहिए, एंड्रॉइड स्टूडियो से इसे आयात किए बिना ग्रहण प्रोजेक्ट खोलें, जिससे आप समस्या पैदा कर सकते हैं, देख सकते हैं: (मेरी भाषा का माफ़ करें, मैं स्पैनिश बोलता हूं।) http : //developer.android.com/intl/es/sdk/installing/migrate.html

मुझे समस्या एंड्रॉइड स्टूडियो में लिबरेशन फ़ोल्डर में जार फ़ाइल लोड करने में सक्षम नहीं थी यदि आपने build.gradle फ़ोल्डर में जेआर फाइल को जोड़ा है, तो बस build.gradle फ़ाइल खोलें और कुछ और संपादन के बिना इसे बचाएं यदि आपने यह रेखा जोड़ दी है

compile fileTree(dir: 'libs', include: ['*.jar'])

इसे बचाने और प्रोजेक्ट को साफ करें .. अगले बिल्ड समय में एंड्रॉइड स्टूडियो जार फ़ाइल लोड करेगा

उम्मीद है की यह मदद करेगा।

मैं एंड्रॉइड स्टूडियो 0.5.2 का उपयोग कर रहा हूं। इसलिए यदि आपका संस्करण मेरी तुलना में कम है तो मेरा जवाब आपके लिए काम नहीं करेगा।

अपने प्रोजेक्ट में एक नया जार जोड़ने के 3 तरीके:

  1. फ़ाइलें -> परियोजना संरचना के तहत मेनू
  2. बस ' F4 ' दबाएं
  3. प्रोजेक्ट नेविगेशन के तहत, किसी भी जावा लाइब्रेरी पर सही क्लिन और एक संदर्भ मेनू दिखाएगा, फिर ' ओपन लाइब्रेरी सेटिंग ' पर क्लिक करें

एक परियोजना संरचना विंडो पॉपअप होगा।

'लाइब्रेरीज़' पर बाएं कॉलम क्लिक करें, फिर दाएं फलक पर देखें, जहां एक प्लस चिह्न '+' है और उस पर क्लिक करें फिर अपनी नई लाइब्रेरी के पथ को दर्ज करें।

सुनिश्चित करें कि नई लाइब्रेरी 'प्रोजेक्ट \ लिब्स \' फ़ोल्डर के अधीन है, अन्यथा आप अपने प्रोजेक्ट स्रोत कोड को सहेजते समय एक टूटी हुई लिंक प्राप्त कर सकते हैं।

मैं वर्तमान में एंड्रॉइड स्टूडियो 1.4 का उपयोग कर रहा हूं।

आयात करने और पुस्तकालय जोड़ने के लिए, मैंने निम्नलिखित प्रवाह का उपयोग किया ->

 1. Press **Alt+Ctr+Shift+S** or Go to **File --> Project** Structure to open up the Project Structure Dialog Box. 2. Click on **Modules** to which you want to link the JAR to and Go to the Dependency Tab. 3. Click on "**+**" Button to pop up Choose Library Dependency. 4. Search/Select the dependency and rebuild the project. 

मैंने समर्थन v4 और v13 पुस्तकालयों को आयात करने के लिए उपर्युक्त दृष्टिकोण का उपयोग किया।

मुझे उम्मीद है कि यह उपयोगी है और प्रवाह को साफ करता है।

मैं एंड्रॉइड स्टूडियो 0.8.6 और प्रोजेक्ट में बाहरी लाइब्रेरी आयात करने के लिए, लाइब्रेरी को लाइब्रेरी को लिब्स फ़ोल्डर में चिपकाता हूं और उस लायब्रेरी के build.gradle लिखने पथ के अंदर निर्भरताओं जैसे इस संकलन फ़ाइलों ('libs / google-play-services.jar') में

एंड्रॉइड स्टूडियो में (मेरा 2.3.1 है) फाइल में जाना – प्रोजेक्ट स्ट्रक्चर:

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

लिब्स संस्करण आवश्यकताओं की जांच करें लिब उच्चतर एंड्रॉइड वर्जन से किसी विधि को कॉल करने का प्रयास कर सकता है। एप्लिकेशन संगतता लिब्स को जोड़ने का प्रयास करें

जब सब कुछ विफल हो जाता है तो ग्रैडल बिल्ड से ईक्लीपस बिल्ड पर स्विच करने का प्रयास किया जाता है।

अपने फ़ोल्डर्स को एक्लिप्स शैली में हटाएं और रीस्ट्रक्चर करें और सबकुछ हटा दें, लेकिन आपका कोड। फिर अपने लिब्जेस के साथ इस परियोजना को पुनः लोड करें

एक बार जब वह चला जाता है तो आप ग्रेडल में वापस चले जाते हैं, अगर आप चाहें