如何将库项目(例如Sherlock ABS)添加到Android Studio?
(不是旧的基于ADT Eclipse的捆绑包,而是新的Android Studio。)
Android Studio 1.0更新
自从发布Android Studio 1.0(以及许多版本在v1.0到我上次回答之时的第一个版本)以来,某些事情已经发生了变化。
我的描述着重于通过Gradle文件手动添加外部库项目(以更好地理解过程)。如果您想通过Android Studio创建者添加库,只需通过视觉指南检查以下答案(Android Studio 1.0与屏幕截图有所不同,但过程非常相似)。
在开始手动将库添加到项目之前,请考虑添加外部依赖项。它不会弄乱您的项目结构。Maven存储库中几乎提供了每个知名的Android库,其安装仅需要app/build.gradle文件中的一行代码:
dependencies {
compile 'com.jakewharton:butterknife:6.0.0'
}
添加库
这是将外部Android库添加到我们的项目的完整过程:
HelloWorld/
app/
- build.gradle // local Gradle configuration (for app only)
...
- build.gradle // Global Gradle configuration (for whole project)
- settings.gradle
- gradle.properties
...
HelloWorld/
app/
- build.gradle // Local Gradle configuration (for app only)
...
libs/
PagerSlidingTabStrip/
- build.gradle // Local Gradle configuration (for library only)
- build.gradle // Global Gradle configuration (for whole project)
- settings.gradle
- gradle.properties
...
include ':app', ':PagerSlidingTabStrip'
project(':PagerSlidingTabStrip').projectDir = new File('libs/PagerSlidingTabStrip')
5.1如果您遇到“默认配置”错误,请尝试执行此操作,而不是执行步骤5,
include ':app'
include ':libs:PagerSlidingTabStrip'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(":PagerSlidingTabStrip")
}
6.1。如果您执行了步骤5.1,请遵循此步骤(而不是6)
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(":libs:PagerSlidingTabStrip")
}
apply plugin: 'com.android.library'
dependencies {
compile 'com.android.support:support-v4:21.0.3'
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
另外,您可以为项目创建全局配置,其中将包含SDK版本和每个模块的构建工具版本,以保持一致性。只需编辑gradle.properties文件并添加行:
ANDROID_BUILD_MIN_SDK_VERSION=14
ANDROID_BUILD_TARGET_SDK_VERSION=21
ANDROID_BUILD_TOOLS_VERSION=21.1.3
ANDROID_BUILD_SDK_VERSION=21
现在,您可以在build.gradle文件(在应用程序和库模块中)中使用它,如下所示:
//...
android {
compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION
defaultConfig {
minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION)
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION)
}
}
//...
Google I / O 2013-新的Android SDK构建系统是有关使用Gradle构建系统构建Android应用的精彩演示:正如Xavier Ducrohet所说:
Android Studio全部涉及编辑,调试和概要分析。它不再是要构建的。
刚开始时可能有些混乱(特别是对于那些使用Eclipse并从未像我这样见过蚂蚁的人;)),但最终Gradle为我们提供了很多机会,值得学习这个构建系统。
问题内容: 所以,我想要的是选择一个项目时要运行的另一段代码。但是我的问题是,如何对特定项目实施? 这是我的代码: 我该怎么做才能添加到“车辆”,“自行车/自行车”,“船”,“房屋”,“企业”,“对象”,“工作”,“等级”和“许可证”项中? 问题答案: 如果您希望在选择更改时发生某些事情,则不希望使用MouseListener,而希望使用。它不仅是正确的抽象,而且请记住,不使用鼠标就可以更改选择。
问题内容: Eclipse Helios 3.6 Windows XP SP3 我已经使用Eclipse通过以下方式下载了guava SDK: 1)在Eclipse中,转到 帮助 >安装新软件… 2)在“ 使用: ”文本框中,我使用了以下URL http://svn.codespot.com/a/eclipselabs.org/guava- bundle/trunk/repository/ 3)它
问题内容: 我需要完成以下任务: 从: (向每行添加一个元素)到: 我已经尝试做类似a [n] = array([1,3,4,x])的事情 但是numpy抱怨形状不匹配。我尝试遍历并将元素x附加到每个项目,但是更改未反映出来。 关于如何实现此目标的任何想法? 问题答案: 对于有python经验的人来说,将数据追加到现有数组是很自然的事情。但是,如果您发现自己定期附加到大型数组,则会很快发现NumP
我有以下项目:https://github.com/glusk2/sprouts 我尝试将添加到根目录文件中的整个项目中,如下所示:
问题内容: 我设法下载了Eclipse Helios的svn插件。然后,我设法将一个新的存储库添加到我选择的驱动器中。但是我看不到如何知道已经创建的项目?有人可以告诉我我该怎么做。 谢谢 问题答案: 就像是: 右键单击您的项目。 选择团队->共享项目。 该向导将指导您进行初始导入。 实际上,Initial Import不会将任何代码放入项目存储库中,而只是将项目详细信息放入仓库中。因此,您需要执行
问题内容: 我刚开始学习C#,目前正在尝试创建一个简单的程序,该程序从SQLite数据库读取1行数据。 我已经成功创建了该程序,但是我仍然必须引用具有完整地址的.db文件,例如: 但是这样,当我创建安装程序时,将不会包含.db。我想使它像将图像添加到我的解决方案资源管理器中时一样,可以使用以下短地址: 那么,有什么方法可以将.db文件包含到我的项目中?我试图读取当前目录并使用| DataDirec