Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 格拉德尔+;Java+;安卓&x2B;从资产目录创建递归列表的助手。。。。_Android_Gradle - Fatal编程技术网

Android 格拉德尔+;Java+;安卓&x2B;从资产目录创建递归列表的助手。。。。

Android 格拉德尔+;Java+;安卓&x2B;从资产目录创建递归列表的助手。。。。,android,gradle,Android,Gradle,我很想把这作为对原始问题的评论,但我没有足够的访问权发表评论。。。。 我试图将的答案用于与AIDE一起开发的android java项目。。。。 据我所知,所有这些gradle/maven的东西助手仍然使用GradleV1 从general build.gradle文件中删除: 依赖项{classpath'com.android.tools.build:gradle:1.+'} 因此,我将整个新资产读取任务添加到app build.gradle(在app director中)中,现在看起来是这样

我很想把这作为对原始问题的评论,但我没有足够的访问权发表评论。。。。 我试图将的答案用于与AIDE一起开发的android java项目。。。。 据我所知,所有这些gradle/maven的东西助手仍然使用GradleV1

从general build.gradle文件中删除: 依赖项{classpath'com.android.tools.build:gradle:1.+'}

因此,我将整个新资产读取任务添加到app build.gradle(在app director中)中,现在看起来是这样的:

apply plugin: 'com.android.application'

    android {
    compileSdkVersion 21
    buildToolsVersion "21.1.0"

    defaultConfig {
        applicationId "com.nohkumado.quelkar"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }   

//try to compile a asset directory listing....
    task indexAssets 
    {
       description 'Index Build Variant assets for faster lookup by AssetManager later'
       ext.assetsSrcDir = file( "${projectDir}/src/main/assets" )        
       ext.assetsBuildDir = file( "${buildDir}/assets" )
       inputs.dir assetsSrcDir
       //outputs.dir assetsBuildDir
       doLast 
   {
           android.applicationVariants.each 
    { 
                   target ->
           ext.variantPath = "${buildDir.name}/assets/${target.dirName}"
           println "copyAssetRec:${target.dirName} -> ${ext.variantPath}"

           def relativeVariantAssetPath = projectDir.name.toString() + "/" + ext.variantPath.toString()
           def assetIndexFile = new File(relativeVariantAssetPath +"/assets.index")
           def contents = ""

           def tree = fileTree(dir: "${ext.variantPath}", exclude: ['**/.svn/**', '*.index'])

           tree.visit 
                         { 
                           fileDetails ->
               contents += "${fileDetails.relativePath}" + "\n"
           }
           assetIndexFile.write contents
           }
       }
    }
    indexAssets.dependsOn 
    {
      tasks.matching { task -> task.name.startsWith( 'merge' ) && task.name.endsWith( 'Assets' ) }
    }
    tasks.withType( Compile ) 
    {
       compileTask -> compileTask.dependsOn indexAssets
    }
}

dependencies {
    compile project('::../UtilsApp:nohutils')
    compile fileTree(dir: 'libs', include: ['*.jar'])
}
所以我认为我做对了。。。。。但似乎没有,将该任务添加到gradle文件中,会破坏dependices指令,这意味着突然之间,我从外部库nohutils导入的所有内容都不再工作

事实上,我一声明,即使是一个空的“任务索引”。。。。。 不幸的是,每次我尝试应用我在gradle手册中读到的内容时,AIDE都失败了,因为AIDE没有任何手册,它只是在黑暗中摸索


因此,如果有人有一个可能的解释/解决方案,我很乐意接受……

AIDE对很多事情没有支持,不幸的是,这很可能是其中之一。AIDE对很多事情没有支持,不幸的是,这很可能是其中之一。