从ADT到Android Studio
来源:互联网 发布:诺基亚5500软件 编辑:程序博客网 时间:2024/06/08 05:26
从 ADT 迁移到 Android Studio
如果你看到上面的优点,已经克服了心中的怀疑和恐惧,准备动手迁移,下面提供一些迁移提示。
常用网站
部分需要科学上网
你无法科学上网?赶紧搜一下,自己搭或者买一个吧。世界如此多娇,人生苦短。将你遇到过问题的出错信息用 Google 搜索,第一条来自 stackoverflow 的答案就是你想要的。
- Android Studio 下载页
- Android Studio:Android Developer 上 Android Studio 的介绍
- Android Tools:Android 工具首页,有大量的深度的技术文档
- Android Build Sytem:基于 gradle 的 Android 构建系统,最为关键的一篇文章
- 从 ADT 迁移指南:官方提供的迁移手册
- Android Studio 国内下载渠道:良心网站,你懂的,但是笔者不对 Xcode Ghost之类的事情负责
ADT 与 Android Studio 目录结构对比
ADT 项目结构
project/src/:放置代码文件
project/libs:放置 .jar 库或者 .so 库
project/res:项目资源文件
project/AndroidManifest.xml:工程 manifest 文件
Android Studio 项目结构
Android Studio 的一个 project (项目)下可以包含多个独立的 module(模块),图中 Bugtags-Android-Demo 便是一个项目,app 便是一个 module。结构如下。
project/build.gradle:项目的 build.gradle 文件,主要是全局的远程库配置、gradle 插件版本等信息
project/app:名字为 app 的模块
project/build.gradle:模块的 build.gradle 文件,是最关键的配置文件,后续会有文章继续专门介绍 gradle build system
project/app/src:源码文件夹
project/app/src/java:放置代码文件
project/app/src/jniLibs:默认的.so 库放置的位置,可以在模块的 build.gradle 中通过jniLibs.srcDirs 值来修改所在位置
project/app/libs:放置 .jar 库
从 ADT 迁移
本文主要参考这篇 迁移指南。Android Studio 提供了非常友好的导入向导。
在 Android Studio 导入
File->New->Import Project,找到你的 ADT 的 workspace 下的项目,一路点击 YES,会生成一个全新的项目。
问题
- 项目之间有依赖
直接导入使用依赖的项目,被依赖的项目就会自动被导入到同一个项目中,作为一个模块。
下文中的左侧是 ADT 项目,右侧是 Android Studio 项目。
其中 Bugtags-Android-Eclipse-Demo 使用 Bugtags-Android-Eclipse-Lib 作为依赖。
- 停留在界面上不动
这个状态是 gradle 构建脚本尝试去下载 gradle 的 wrapper,这个 wrapper 大概 3M,需要科学上网,早期很多人就是在这个页面卡住,放弃了 Android Studio。确保你已经科学上网,并且耐心等待,又或者点击取消,先进项目看看。
Android Studio 的几个关键概念
如果上面没有问题,你已经能够正常的看到 Android Studio 的项目工程了。
IDE 使用、快捷键什么的,笔者认为没什么可写的。自己熟悉吧。下面介绍一个对于 ADT 而言全新的概念。
build.gradle
在项目的 build.gradle 文件中,有如下内容:
在每个模块的 build.gradle 文件中,初始会有如下内容:
依赖管理
远程依赖:
Android Studio 使用 gradle 进行依赖管理,兼容了 maven 的库,一个经典的 maven 库的配置如下:
对比之后,你会发现 compile 的内容中,分为三部分 groupdId:artifactId:version
com.bugtags.library对应groupId
bugtags-lib对应 artifactId
1.0.8对应 version
本地依赖
Android Studio 工程创建的时候,默认会有如上依赖,意义是把放在与该 build.gradle 文件同一层的 libs 文件夹中所有的 jar 文件都作为库依赖。
同步依赖
一般情况下,你配置完了build.gradle 之后,该编辑框的上方会出现正在 sync 的标记。耐心等待完成即可。如果发现没有同步成功,可以使用下面这个按钮:
如果长时间未成功,则可以在控制台使用:
bash ./gradlew build --info
以上命令来看控制台输出。build variant
Android Studio 内置了多渠打包功能,就是所谓的 build variant,可以新建若干个 productflavor 来达到目的。 大致可以这样:
这个功能十分的灵活和强大,举个例子,你想要有两个版本,一个收费版,一个免费版,在若干代码文件和资源文件上,都不大一样。
以前你可能选择在代码中判断当前版本,加载不同的代码和资源。或者使用 git 的 branch。
现在你可以使用 Android Studio 直接使用多个 productflavor, 在对应的 flavor 放置那些有区别的代码和文件。一次打包,即可完成。 在下一篇系列文章中,笔者将会详细介绍这个功能。
0 0
- 从ADT到Android Studio
- 从Eclipse+ADT迁移到Android Studio
- 从 ADT 迁移到 Android Studio
- 从eclipse ADT导入到Android studio
- 拥抱 Android Studio 之一:从 ADT 到 Android Studio
- 拥抱Android Studio:从ADT到Android Studio
- 拥抱 Android Studio 之一:从 ADT 到 Android Studio
- 从Eclipse ADT 切换到 Android Studio遇到的问题及解决办法汇总
- ADT、GitHub 导入项目到Android Studio
- 从Eclipse到Android Studio
- 从eclipse到android studio
- Import adt 项目到android studio解决的问题总结
- 解决Eclipse、Android Studio ADT AVD不能检测到手机
- Eclipse ADT->Android Studio
- 从Eclipse到Android Studio经历
- Android Studio从入门到精通
- 从Eclipse导入工程到Android Studio
- 从Eclipse导入工程到Android Studio
- C++11: regex #1
- 堆栈平衡
- 单机版五子棋
- 一直以来伴随我的一些学习习惯(四):知识结构
- oc 知识总结一(NSString、NSMutableString)
- 从ADT到Android Studio
- NSDate iOS 日期
- 【jQuery】使用post()方法以POST方式从服务器发送数据
- IOS NSString NSMutableString 不可变|可变字符串
- 数学之美番外篇:进化论中的概率论
- android 获取屏幕大小和屏幕截图
- the begining of coding
- IOS 代码创建UI界面
- How Google Finds Your Needle in the Web's Haystack