[英]Run android manifest merger as a stand-alone application
我有很多模塊的Ant
項目。 我正在嘗試將一些模塊合並為更大的模塊並減少它們的數量。
我可以將android manifest merger
作為獨立應用程序運行並合並指定為參數的清單嗎?
例如,我有模塊: A , B , C , D , E
我需要[A] , [B]成為[AB]模塊, [C] , [D] , [E]成為[CDE]
我需要這個,因為我正在編寫Python
腳本,這將有助於遷移到Gradle
。 腳本將掃描目錄,並使用所有文件,復制的類和資源創建新項目。 我希望它是普遍的。
好的,我想回答我自己的問題。
manifest-merger
是放在ANDROID_HOME/tools/lib/manifest-merger.jar
java
庫
要使用jar
作為獨立應用程序,我從google platform tools
git clone --depth=1 https://android.googlesource.com/platform/tools/base
項目: git clone --depth=1 https://android.googlesource.com/platform/tools/base
Manifst-Merger源代碼位於base/build-system/manifest-merger
您也可以在grepcode上找到代碼。
我將代碼解壓縮到maven
項目中,解決了所有外部依賴項並創建了可以克隆並作為獨立應用程序使用的項目:
https://github.com/Bresiu/android-manifest-merger
用法:
git clone git@github.com:Bresiu/android-manifest-merger.git
mvn install
java -jar target/manifest-merger-jar-with-dependencies.jar --main mainAndroidManifest.xml --log [VERBOSE, INFO, WARNING, ERROR] --libs [path separated list of lib's manifests] --overlays [path separated list of overlay's manifests] --property [PACKAGE | VERSION_CODE | VERSION_NAME | MIN_SDK_VERSION | TARGET_SDK_VERSION | MAX_SDK_VERSION=value] --placeholder [name=value] --out [path of the output file]
我使用過這個庫如下:
java -jar target/manifest-merger-jar-with-dependencies.jar --main <path_to_main_manifest> --libs <path_to_libs_manifests_divided by ':'> --out <output_manifest> --log WARNING
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.