gpt4 book ai didi

android - Android Studio如何打包来自多个库项目的单个AAR?

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

我正在构建android库项目,该项目依赖于另一个内部库项目。

我想知道是否有一种方法可以打包单个AAR库,该库中已经包含内部库。我只想与我的应用程序开发人员共享1个AAR库软件包。

这是我的build.gradle文件当前的外观,但是当前它们生成单独的AAR文件,并且都需要包含在Application的build.gradle中。由于另一家公司正在构建应用程序,因此我们需要与他们共享最终的AAR文件,而不是共享完整的库项目。

----- internalLib -------- >>>>>>>>>>

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'android-library'

repositories {
mavenCentral()
}

android {
compileSdkVersion 18
buildToolsVersion '18.1.1'
}

dependencies {
compile 'com.android.support:support-v4:18.0.0'
}

----- externalLib --------
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.7.+'
}
}
apply plugin: 'android-library'

repositories {
mavenCentral()
}

android {
compileSdkVersion 18
buildToolsVersion '18.1.1'
}

dependencies {
compile 'com.android.support:support-v4:18.0.0'
compile project(':internalLib')
}

最佳答案

没有组合库的机制。这有点复杂,因为您可能想控制要合并的依赖项(例如,您可能不想在其中包含support-v4)。另外,您还需要合并资源和Android list 。

目前,没有办法轻松破解某些东西,除非您确定两个res文件夹之间的资源没有冲突(例如,一个库中可以有strings_a.xml,而另一个库中可以有strings_b.xml)。这样,您可以通过将两个res文件夹都复制到同一位置(而不是在android res级别进行合并)来“合并”这两个res文件夹。

对于 list 来说,它会更复杂,但是可以通过一些自定义代码来实现。

为此,提供内置机制的优先级非常低,因此不要期待很快。

关于android - Android Studio如何打包来自多个库项目的单个AAR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31226550/

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