可以获得具有产品风味的 .aar
It is possible to get a .aar with a Product flavor
我在工作中做一个大项目,我3个月前被继承了。目前项目结构是这样的:
- 引擎:它是一个包含我的全部代码(所有 java 类)和一些外部库的库
- 应用程序:它是一个 android 项目,但它只是一个包装器,具有 2 个不同的应用程序风格(用于商业目的的不同名称和图标)。引擎库已集成到此应用程序。
另外,有时我会为一个使用库但没有应用程序包装器的客户构建 .aar 引擎。
我的大问题:这个项目的最后一个 developepr 不太了解 gradle 和 android 结构,在 Engine 和 App/build script / extern lib 中添加了两次奇怪的 res 添加了两次...
所以,在我开发新的主要版本之前,我想重构构建系统并简化它!在最好的情况下,我想删除 lib 项目,将引擎代码添加到应用程序,因为只有 1 个项目应用程序并使用强大的风格来管理特定部分。
如果我有这样的口味:
- 一个
- 两个
- 库
可以使用 flavor "lib" 来获得 .aar ?
如果您有其他解决方案来简化或解决我的问题,我就结束了。提前致谢:)
你有没有描述过,一个同时输出 .aar 和 .apk 的应用程序模块是不可能的 afaik,你的模块必须是一个库或一个应用程序,而不是两者。 (即在您的 build.gradle 中:apply plugin: 'com.android.application'
或 'com.android.library'
)。
我的猜测是 (Android studio 1.5.1) :
- 单个 Android Studio 项目,
- 两个模块,一个库模块和一个应用程序模块(文件 -> 新建... -> 新建模块... -> 一个 "Android Library" 和一个 "Phone or tablet module")
- 在应用模块中,您品牌的 2 种风格。
- 将库模块作为依赖项集成到您的应用程序模块中(在您的应用程序
build.graddle
依赖项部分:compile project(path : ':yourlibrarymodule')
)
您的资源可以存储在您的库中(可在您的库和您的应用程序中使用而无需重复),在您的应用程序中以主要风格(可在您的 2 种风格中使用而无需重复)或在您的两种风格中存储。
因此,您可以通过构建库模块来生成 .aar
,通过构建应用程序模块来生成两个 .apk
。
我在工作中做一个大项目,我3个月前被继承了。目前项目结构是这样的:
- 引擎:它是一个包含我的全部代码(所有 java 类)和一些外部库的库
- 应用程序:它是一个 android 项目,但它只是一个包装器,具有 2 个不同的应用程序风格(用于商业目的的不同名称和图标)。引擎库已集成到此应用程序。
另外,有时我会为一个使用库但没有应用程序包装器的客户构建 .aar 引擎。
我的大问题:这个项目的最后一个 developepr 不太了解 gradle 和 android 结构,在 Engine 和 App/build script / extern lib 中添加了两次奇怪的 res 添加了两次...
所以,在我开发新的主要版本之前,我想重构构建系统并简化它!在最好的情况下,我想删除 lib 项目,将引擎代码添加到应用程序,因为只有 1 个项目应用程序并使用强大的风格来管理特定部分。
如果我有这样的口味:
- 一个
- 两个
- 库
可以使用 flavor "lib" 来获得 .aar ?
如果您有其他解决方案来简化或解决我的问题,我就结束了。提前致谢:)
你有没有描述过,一个同时输出 .aar 和 .apk 的应用程序模块是不可能的 afaik,你的模块必须是一个库或一个应用程序,而不是两者。 (即在您的 build.gradle 中:apply plugin: 'com.android.application'
或 'com.android.library'
)。
我的猜测是 (Android studio 1.5.1) :
- 单个 Android Studio 项目,
- 两个模块,一个库模块和一个应用程序模块(文件 -> 新建... -> 新建模块... -> 一个 "Android Library" 和一个 "Phone or tablet module")
- 在应用模块中,您品牌的 2 种风格。
- 将库模块作为依赖项集成到您的应用程序模块中(在您的应用程序
build.graddle
依赖项部分:compile project(path : ':yourlibrarymodule')
)
您的资源可以存储在您的库中(可在您的库和您的应用程序中使用而无需重复),在您的应用程序中以主要风格(可在您的 2 种风格中使用而无需重复)或在您的两种风格中存储。
因此,您可以通过构建库模块来生成 .aar
,通过构建应用程序模块来生成两个 .apk
。