gpt4 book ai didi

android - Gradle 和 Android : obtain package ID from Android Library Project

转载 作者:行者123 更新时间:2023-12-03 04:39:15 24 4
gpt4 key购买 nike

我有一个使用 Gradle 构建系统的 Android Studio 创建的 Android 项目。

我在这个 Android 项目中有几个模块(子项目),其中一些是 Android 库项目(AAR)。

我需要做的是从 Gradle 的这些 AAR 项目中获取包 ID(基本上是唯一标识 Android 应用程序或库的值,在 AndroidManifest.xml 文件中的“包”属性中找到该值)。

现在,如果项目是 android 应用 这将是微不足道的:“android.defaultConfig.applicationId”属性已经包含包 ID。

但对于 Android 图书馆 项目此值不可用。
现在,我知道我可以在技术上使用(非常灵活的)groovy XML 解析器直接从 AndroidManifest.xml 文件中读取值,但我想知道是否有更直接和有效的方法来做到这一点,就像有安卓应用。

最佳答案

好吧,因为我没有找到更直接的解决方案,所以最后我是用纯 Gradle 代码做到的:

File pluginManifestFile = file(project.absolutePath + "/src/main/AndroidManifest.xml")
if(pluginManifestFile.exists()){
String manifestContents = pluginManifestFile.text
def pluginManifestXml = new XmlSlurper().parseText(manifestContents)
String packageName = pluginManifestXml.@package.toString()
println 'Package name of the library is: ' + packageName
}

关于android - Gradle 和 Android : obtain package ID from Android Library Project,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30443518/

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