久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

排除發(fā)布構(gòu)建類型的資產(chǎn)

Exclude assets for release build type(排除發(fā)布構(gòu)建類型的資產(chǎn))
本文介紹了排除發(fā)布構(gòu)建類型的資產(chǎn)的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我正在使用 gradle 構(gòu)建的應(yīng)用程序中導入一個 android 庫,如下所示:

I'm importing an android library in an application built with gradle, like that:

dependencies {
    compile 'com.example:great-lib:0.1-SNAPSHOT'
}

此庫僅包含要在 webview 中使用的資產(chǎn)、js、css 和圖像,布局如下:

This library contains only assets, js, css and images to be used in a webview, with a layout like that:

assets/
|-> great.css
|-> great.min.js
|-> great.min.js.map
|-> js/
|   |-> plop.js
|   |-> foo.js
|   ...
|-> img/
|   ...

js 文件夾包含源文件(用于源映射).我想在調(diào)試版本中包含它和 .map 文件,并且在發(fā)布版本中只有縮小的 js,但我找不到這樣做的方法.

The js folder contains source files (to be used with source maps). I would like to include it and the .map file for the debug builds, and have only the minified js in release builds, but I can't find a way to do that.

到目前為止,我已經(jīng)嘗試過:

So far I've tried :?

android {
    // this doesn't exclude anything
    packageOptions {
        exclude 'assets/js'
    }
    buildTypes {
        release {
            // this does exclude the js folder, but in both release and debug
            aaptOptions {
                ignoreAssetsPattern "!js"
            }
        }
    }
}

知道我想要的是否可以實現(xiàn),如果可以,如何實現(xiàn)?

Any idea if what I want is possible to achieve, and if so how?

(我也想過發(fā)布兩個版本的庫(great-libgreat-lib-debug),并且在中有依賴debugCompilereleaseCompile,但我寧愿避免這種情況并發(fā)布單個版本)

(I've also thought of publishing two versions of the library (great-lib and great-lib-debug), and have the dependency in debugCompile and releaseCompile, but I'd prefer avoiding that and publishing a single version)

推薦答案

我最終做了以下事情:

android.applicationVariants.all { variant ->

  if (variant.name.contains('Release')) {
    // exclude source and sourcemap from release builds
    def noJsSourceTask = task("delete${variant.name}JsSource", type: Delete) {
      delete "${buildDir}/intermediates/assets/${variant.dirName}/js"
      delete "${buildDir}/intermediates/assets/${variant.dirName}/great.min.js.map"
    }
    variant.mergeAssets.finalizedBy noCeJsSourceTask
  }
}

它工作正常,但有幾件事我不太喜歡:

It works ok, but there are a few things I don't really like:

  • 我正在處理任務(wù)完成后生成的文件(finalizedBy),因此它不適用于最新"檢查.但這僅適用于發(fā)布版本,我更頻繁地進行調(diào)試
  • 要刪除的文件的路徑是手動構(gòu)建的.我不確定它是否足夠通用,可以按原樣在其他項目中重用
  • 我根據(jù)它們的名稱選擇變體.我會喜歡更有條理的東西.
  • I'm touching at the files produced by a task after it is done (the finalizedBy), so it doesn't work well with "up-to-date" checking. But it's only for release builds, I'm doing debug ones more often
  • the path of the files to delete is manually built. I'm not sure if it's generic enough to be reused in other projects as-is
  • I'm selecting the variants based on their name. I would have liked something more structured.

這篇關(guān)于排除發(fā)布構(gòu)建類型的資產(chǎn)的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

IncompatibleClassChangeError after updating to Android Build Tools 25.1.6 GCM / FCM(更新到 Android Build Tools 25.1.6 GCM/FCM 后出現(xiàn) IncompatibleClassChangeError)
How to get current flavor in gradle(如何在 gradle 中獲取當前風味)
How to fix quot;unexpected element lt;queriesgt; found in lt;manifestgt;quot; error?(如何修復“意外元素lt;查詢gt;在“清單中找到錯誤?)
Multi flavor app based on multi flavor library in Android Gradle(基于 Android Gradle 中多風味庫的多風味應(yīng)用)
Android dependency has different version for the compile and runtime(Android 依賴在編譯和運行時有不同的版本)
Transitive dependencies for local aar library(本地 aar 庫的傳遞依賴)
主站蜘蛛池模板: 免费在线观看成人av | 91激情视频 | 亚洲69p | 亚洲美女视频 | 国产高潮好爽受不了了夜夜做 | 久久中文免费视频 | 成人九色 | 欧美三级在线 | 久久777| 午夜视频一区二区三区 | 亚洲综合二区 | 99精品视频在线 | 91国内在线观看 | 永久免费在线观看 | 亚洲精久 | 一区二区久久精品 | 久久av.com | wwwxxx日本在线观看 | 国产精品一区一区三区 | 国产99久久精品一区二区300 | 大陆一级毛片免费视频观看 | 日韩欧美在线免费观看视频 | 亚洲国产成人久久综合一区,久久久国产99 | 免费av手机在线观看 | 国产亚洲精品久久午夜玫瑰园 | 黄色一级网| 日韩精品视频在线观看一区二区三区 | 国产黄色av网站 | 日韩欧美不卡 | 国产精品视频在线观看 | 亚洲影视在线 | 97久久久久久久久 | 午夜精品一区二区三区在线视频 | 中文字幕蜜臀av | 欧美精品久久久 | 成人影院网站ww555久久精品 | 福利视频一区二区 | 久久精品在线 | 一级看片 | 国产精品99久久久久久宅男 | 国产精品高潮呻吟久久av黑人 |