如何在 android studio 中使用库项目
Posted
技术标签:
【中文标题】如何在 android studio 中使用库项目【英文标题】:How to use a library project in android studio 【发布时间】:2013-12-21 01:42:02 【问题描述】:我一直在尝试将this library project 添加到我在 android Studio 中的现有项目中。这是我第一次使用图书馆项目,我遇到了困难。我从周围的教程和帖子中寻找了很多方法来做到这一点,但无法完成。
【问题讨论】:
【参考方案1】:我不确定是否已经可以通过 IDE 添加库项目(-> 没有任何问题)。 我通过像这样配置我的项目的 gradle 文件来做到这一点:
在您的项目根目录中创建一个名为libs
的文件夹
将文件夹datetimepicker-library
复制到libs
使用以下命令将此库添加到您的settings.gradle
:
include ':libs:datetimepicker-library'
转到您的AppProject
的build.gradle
文件,然后将以下行添加到您的dependencies
:
implementation project(':libs:datetimepicker-library')
至少你必须同步你的 gradle 文件:Tools -> Android -> Sync Project with Gradle Files
请试试这个。如果您遇到错误,请发布日志文件。
【讨论】:
我相信这是正确的答案,但我无法让我的 build.gradle 文件接受“编译项目”行。但是,使用“compile fileTree(dir: 'libs', include: ['datetimepicker-library'])”对我有用。 最后一条评论对我有用。使用原始编译项目... IDE 抱怨未定义的“默认”内容。无论如何:库代码没有出现在AS上,所以我想我应该打开另一个Android Studio窗口来编辑它。 不适用于 Mapbox。错误:(13) 在包“com.example.myapp”中找不到属性“accessToken”的资源标识符 我按照您提到的这些步骤操作并收到错误错误:项目:应用程序声明了从配置“编译”到配置“默认”的依赖关系,该依赖关系未在项目的描述符中声明:libs:recognito。我正在尝试包含 lib - github.com/amaurycrickx/recognito【参考方案2】:我是这样做的,
-
从
File
菜单转到project Structure
从左侧窗格中选择modules
按“+”
完成新模块向导步骤
Make sure to make the module package name same as the module you want to add
再次打开Project structure
,如步骤 1 所示
从模块列表中选择您的项目,然后在右侧选择依赖项
点击右侧的+
图标
选择模块依赖,然后选择新添加的模块。
将库项目的文件复制到创建为模块的新目录
完成
第 1 步:
第 2 步:
!
第 3 步:
第 4 步:
....
第 6 步和第 7 步:
第 8 步:
【讨论】:
添加github.com/saik0/UnifiedPreference有什么建议吗?我试图遵循这一点,但 AS 0.5.1 一直抱怨同步失败【参考方案3】:其他答案使它看起来比通常更难。只需在应用的 build.gradle 文件的依赖项部分添加一个 compile
行。
在这种情况下是
dependencies
// ...
compile 'com.github.flavienlaurent.datetimepicker:library:0.0.2'
Gradle 提示我进行同步,在我这样做之后,库会自动下载到我的项目中。
【讨论】:
【参考方案4】:上面列出的解决方案的问题是,您最终会在使用该库的应用程序中克隆库项目。这会使更新库变得复杂,因为您需要在进行更改时删除并重新导入模块。
我找到的解决方案可以从外部文件夹直接使用库项目,它不会克隆原始库文件。
解决方法很简单……
在 settings.gradle 中添加以下行:
include ':commonwidgets'
project (':commonwidgets').projectDir = new File(settingsDir, '../SharedWidgets/commonwidgets')
并在 build.gradle dependency
部分添加:
implementation project(path: ':commonwidgets')
注意:commonwidgets
是我的库名,请根据自己的库名和路径替换名称和路径。
我希望这对某人有所帮助...
我真的很想从 GitHub 导入库,但我拒绝为私人库支付 9 美元/月的 jetpack。
【讨论】:
以上是关于如何在 android studio 中使用库项目的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Android Studio 和 gradle 构建一个 android 库?
Android Studio - 如何使用库(来自 eclipse 项目)
如何在 android studio 中为 IBM MobileFirst 项目导入外部库项目?
如何在使用库的eclipse中导入android studio项目?