gpt4 book ai didi

android - 作为独立应用程序运行 android manifest merger

转载 作者:太空狗 更新时间:2023-10-29 13:14:54 26 4
gpt4 key购买 nike

我有一个包含许多模块的 Ant 项目。我正在尝试将一些模块合并成更大的模块并减少它们的数量。

我可以将 android manifest merger 作为独立应用程序运行并合并指定为参数的 list 吗?

例如我有模块:ABCDE

我需要[A][B]成为[AB]模块,并且[C][D][E] 成为 [CDE]

我需要这个,因为我正在编写 Python 脚本,这将有助于迁移到 Gradle。脚本将扫描目录,并使用所有文件、复制的类和资源创建新项目。我希望它是通用的。

最佳答案

好吧,我想回答我自己的问题。

manifest-mergerjava图书馆放在ANDROID_HOME/tools/lib/manifest-merger.jar

使用jar作为独立应用程序,我从 google platform tools 克隆了项目存储库: 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

用法:

  1. git clone git@github.com:Bresiu/android-manifest-merger.git

  2. mvn install

  3. 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]

  4. 我使用这个库如下:

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

关于android - 作为独立应用程序运行 android manifest merger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36030746/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com