android - कॉर्डोवा प्लगइन विकास-आरा जोड़ने




cordova plugins (2)

कॉर्डोवा प्रोजेक्ट निर्माण के बाद, प्लेटफॉर्म को जोड़ना, प्लगइन जोड़ना है।

मान लें कि aar फ़ाइल को libs फ़ोल्डर में कॉपी किया गया है। (मान लें कि फ़ाइल का नाम card.AR है)

इसके बाद ऐप बिल्ड में। निम्नलिखित को निर्दिष्ट करें और ग्रेडल फ़ाइलों के साथ सिंक प्रोजेक्ट पर क्लिक करें।

repositories {
    flatDir {
        dirs 'libs'
    }
}

dependencies {
    compile(name:'cards', ext:'aar')
}

इससे मेरा काम बनता है!! लेकिन इस समाधान का एक दोष यह है .. आपको एंड्रॉइड स्टूडियो पर प्लेटफ़ॉर्म फ़ोल्डर से प्रोजेक्ट को खोलने और अपने बिल्ड.ग्रेड पर उपरोक्त लाइनें जोड़ने की आवश्यकता है

मैं कॉर्डोवा प्लगइन डेवलपमेंट सामान में नया हूँ। मैं एक प्लगइन लिखना चाहता हूं जो एक नई एंड्रॉइड एक्टिविटी खोलने और कुछ विज्ञापन दिखाने में सक्षम है।

इसलिए मैंने here एक सरल ट्यूटोरियल here अनुसरण किया। यह बहुत अच्छी तरह से और उम्मीद के मुताबिक काम करता है।

अगला कदम इस एंड्रॉइड स्टूडियो ग्रैडल प्रोजेक्ट को मेरे प्लगइन में शामिल करना है।

मेरा पहला प्रयास: मेरे कॉर्डोवा प्लगइन के सबफ़ोल्डर में ग्रेड प्रोजेक्ट को जोड़ना और प्लगइन के लिए निम्न पंक्ति जोड़ना। xml फ़ाइल:

<framework src="libs/Broper/build.gradle" custom="true" type="gradleReference" />

मैंने भी कोशिश की:

<framework src="libs/Broper/app/build.gradle" custom="true" type="gradleReference" />

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

तब एक बेहतर समाधान (मुझे लगा कि) इसके बजाय एएआर जोड़ना है। लेकिन वहाँ भी मुझे कोई सुराग नहीं है कि मेरे कॉर्डोवा प्लगइन में उस एएआर को जोड़ने के लिए क्या करना है।

तो, सवाल यह है: मैं अपने कॉर्डोवा प्लगइन के लिए सही तरीके से एक एंड्रॉइड एटीडीओ एरोजेक्ट (या लाइब्रेरी) कैसे जोड़ूं?


यहां मैंने कॉर्डोवा प्लगइन के साथ एक ग्रेडल संदर्भ का उपयोग करने के लिए किया है, मुझे लगता है कि यह आपकी मदद कर सकता है।

वैश्विक संरचना:

pluginFolder/
  build-extras.gradle
  plugin.xml
  yourDirContainingYourAAR/
  src/
    android/
      yourFile.gradle
      myPlugin.java

अपनी लाइब्रेरी रखो, foo.aar , yourDirContainingYourAAR निर्देशिका में yourDirContainingYourAAR (यदि आवश्यक हो तो इसे बनाएं)

  • plugin.xml फ़ाइल में:

    <platform name="android">
        <!-- your configuration elements, references, source files, etc... -->
    
        <framework src="src/android/yourFile.gradle" custom="true" type="gradleReference" />
    
        <resource-file src="yourDirContainingYourAAR/foo.aar" target="libs/foo.aar" />
    </platform>
  • yourFile.gradle फ़ाइल में yourFile.gradle :

    repositories{    
      jcenter()
      flatDir {
          dirs 'libs'
       }
    }
    
    dependencies {
       compile(name:'foo', ext:'aar')
    }
    
    android {
      packagingOptions {
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
      }
    }
  • अपने प्लगइन के रूट फ़ोल्डर में ( plugin.xml समान स्तर) एक build-extras.gradle । यदि आवश्यक हो, तो अपनी परियोजना की आवश्यकताओं के अनुसार minSdkVersion और targetSdkVersion को जोड़ें या निकालें:

    android {
        defaultConfig {
            minSdkVersion 16
            targetSdkVersion 22
        }
    
       packagingOptions {
           exclude 'META-INF/NOTICE'
           exclude 'META-INF/LICENSE'
       }
    }




aar