对不起,这可能是个愚蠢的问题。首先,我对android有点新鲜。当谈到支持库时,我总是感到困惑。最让我伤心的是,如果我的依赖项中有多个库,并且每个库都使用不同的支持库版本。一个使用 V4 ,另一个使用" v7" 和不同的构建版本。预计它自己使用另一个版本。不会有任何冲突或重复的条目,因为每个条目都有不同的版本。 :-)
被修改
图书馆A(第7节:22.1.1)
图书馆B(第4节:19.1.0)
图书馆C(第4节:18.0.0)
app(v4:18.0.0)
正如我的期望,应该有冲突,但我可以运行没有任何缺陷的项目,这让我很困惑。
已修改
据说v7包含v4,所以我删除了所有子模块中的支持库,并将v7放入 app module 。在我改变之后,我发现了错误,甚至无法建立......
非常感谢您的解释,因为大多数初学者都可能会有这些困惑
答案 0 :(得分:1)
实际上v7包含v4支持库。它们之间不会有任何冲突和重复的条目。
v4支持库
此库旨在与Android 1.6(API级别4)及更高版本一起使用。它包括与其他库相比最大的API集,包括对应用程序组件,用户界面功能,可访问性,数据处理,网络连接和编程实用程序的支持。
v7支持库
它包含几个旨在与Android 2.1(API级别7)及更高版本一起使用的库。这些库提供特定的功能集,可以相互独立地包含在您的应用程序中,并添加了额外的功能。
答案 1 :(得分:0)
v7
包括v4
支持库,因此如果您要导入v7而不需要添加v4
您可以登入v7 libs folder it includes v4 library
现在,如果您有多个库(模块)项目,它具有一些层次结构,而不是将库附加到主父库,并将该父库添加到子库项目或主项目中
Library_A
(必需的v4或v7的某些类)
Library_A1
(必需的v4或v7的某些类)
Main_Porject
(最后一个)
仅向Library_A添加支持v7
将Library_A添加到Library_A1作为模块
无需将v7添加到Library_A& Library_A1可能会导致冲突
仅将Library_A1作为模块附加到Main_Project。
使用不同版本的多个v7库会导致问题。