8

में संपत्ति फ़ोल्डर में फ़ाइलों की प्रतिलिपि करने के लिए पूर्व निर्माण घटना बनाएँ मैं इस परियोजना संरचना है: ProjectFolder/IosFolder, AndroidFolder, CommonFolder अब Android एप्लिकेशन यह की संपत्ति फ़ोल्डर से फ़ाइलों का उपयोग करता। लेकिन हम एक ही फाइल के लिए सामान्य फ़ोल्डर बनाने का फैसला करते हैं।एंड्रॉयड आवेदन

तुम मुझे समारोह डायन आम फ़ोल्डर से फ़ाइलों की प्रतिलिपि जाएगा (इस फ़ोल्डर अपने प्रोजेक्ट के तहत है, इसलिए एंड्रॉयड स्टूडियो में मैं इसे देख नहीं है) संपत्ति Android के लिए फ़ोल्डर से पहले इस ऐप्लिकेशन का निर्माण किया जाएगा बनाने के लिए मदद कर सकते हैं ?

सामान्य फ़ोल्डर में कुछ .json फ़ाइलें और फ़ॉन्ट फ़ाइलें होंगी।

task copyFiles(type: Copy) 

    copyFiles { 
     description = 'Copy files' 
     from 'Common/' 
     into 'Android/{projectName}/app/src/main/assets' 
    } 

यहाँ मेरी फ़ाइल है::

मैं समझता हूँ के रूप में, मैं कुछ है कि जैसे मेरी build.gradle फ़ाइल में इस समारोह लिखने की ज़रूरत

apply plugin: 'com.android.application' 

repositories { 
    mavenCentral() 
} 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     applicationId "amc.amc_mobile_promo2" 
     minSdkVersion 17 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     //For Flurry 
     multiDexEnabled = true 
    } 
    //For Flurry 
    /*compileOptions { 
     //noinspection GroovyAssignabilityCheck 
     sourceCompatibility JavaVersion.VERSION_1_7 
     //noinspection GroovyAssignabilityCheck 
     targetCompatibility JavaVersion.VERSION_1_7 
    }*/ 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

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

    compile 'com.android.support:support-v4:23.1.1' 
    compile 'com.android.support:appcompat-v7:23.1.1' 

    compile 'com.facebook.android:facebook-android-sdk:4.7.0' 
    compile 'com.mcxiaoke.volley:library:1.0.19' 
    compile 'joda-time:joda-time:2.8.2' 
    compile 'com.github.orangegangsters:swipy:[email protected]' 

    compile 'com.squareup.picasso:picasso:2.5.2' 
    compile 'com.squareup.okhttp:okhttp:2.6.0' 
    compile 'com.squareup.okhttp:okhttp-urlconnection:2.6.0' 

    /*compile 'com.android.support:multidex:1.0.1' 
    compile 'com.google.android.gms:play-services-ads:8.3.0' 
    compile 'com.google.android.gms:play-services-identity:8.3.0' 
    compile 'com.google.android.gms:play-services-gcm:8.3.0'*/ 
} 

और आप मुझे बता सकते हैं जहां क्या मैं ग्रैडल कंसोल में निष्पादित विधियों के परिणाम देख सकता हूं?

मुझे किस मार्ग का उपयोग करने की आवश्यकता है और build.gradle फ़ाइल में इस विधि को कैसे व्यवस्थित किया जाता है?

आशा है कि आप मेरी मदद करेंगे।

उत्तर

5

आप इस विन्यास की कोशिश कर सकते हैं:

gradle.projectsEvaluated { 
    preBuild.dependsOn(copyFiles) 
} 

अद्यतन: वहाँ कई आदेशों प्रति कार्य आप के लिए कर सकते हैं। डॉक्स से यहाँ उदाहरण हैं:

task anotherCopyTask(type: Copy) { 
// Copy everything under src/main/webapp 
from 'src/main/webapp' 
// Copy a single file 
from 'src/staging/index.html' 
// Copy the output of a task 
from copyTask 
// Copy the output of a task using Task outputs explicitly. 
from copyTaskWithPatterns.outputs 
// Copy the contents of a Zip file 
from zipTree('src/main/assets.zip') 
// Determine the destination directory later 
into { getDestDir() } 

}

अगर आप सिर्फ एक से दूसरे स्रोत निर्देशिका से कॉपी करने के लिए आप यह कर सकते हैं:

task copyFiles(type: Copy) { 
    from 'pathToMyAssets' 
    into 'AndroidStudioAssetsFolderPath' 
} 

अद्यतन को अपने ऐप्लिकेशन के निर्माण में ऐसा .gradle बहुत नीचे:

task copyFiles(type: Copy) { 
    from 'Users/kostya/repo_amc_mobile_promo/Common/' 
    into 'Users/kostya/repo_amc_mobile_promo/Android/AMC_Mobile_Promo2/app/src/main/assets' 
} 

preBuild.dependsOn(copyFiles) 
+0

क्या आप फ़ोल्डर्स के पथ में मदद कर सकते हैं जो मुझे विधि में चाहिए? कार्य copyFiles (प्रकार: कॉपी) copyFiles { description = 'कॉपी फ़ाइलें' से 'आम /' में '{परियोजना}/ऐप्स/src/मुख्य/आस्तियों /' में शामिल हैं ('**/* ') } gradle.projectsEvalalu {preBuild.dependsOn (copyFiles)} – vlasevich

+0

यदि कोड कोड के साथ मुझे मुश्किल नहीं है तो यह मुश्किल नहीं है। – vlasevich

+0

मैंने अपना जवाब अपडेट किया। क्या आप मुझसे अपने लिए रास्ता पाने के लिए कह रहे हैं? या यह आपको जाने के लिए पर्याप्त है? – j2emanue

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