Android Studio的下载及安装
如果你的电脑可以翻墙,那么请直接到Android官网下载,如下图所示:
如果不幸翻不了墙,没关系,可以到AndroidDevTools下载,这个网站基本涵盖了Android开发所需的所有工具,文件放在百度云上面,下载速度杠杠的。
下载并安装完成后,首次启动会去下载更新一系列文件,如果已经翻了墙,就等待其更新完成;如果没有翻墙,就别傻等了,最终等到的只会是提示下载失败。如何解决呢?你可以断开电脑的网络连接,或者找到Android Studio安装目录的bin目录下面的idea.properties文件,添加一条禁用开始运行向导的配置项:
<code class="hljs avrasm has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; ">disable<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.android</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.first</span><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">.run</span>=true</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li></ul>
这样再次启动Android Studio就会很快进入欢迎页面:
点击Configure-Preference进入偏好设置页面,搜索proxy,如下图所示,手动配置代理服务器即可:
Android SDK在线更新镜像服务器可以在AndroidDevTools上面找到:
返回到欢迎页面,点击Configure-SDK Manager,进入SDK Manager管理页面,接着打开SDK Manager的偏好设置(Preference)页面,这里也要设置代理服务器,并勾选「Force https://… sources to be fetched using http://…」复选框:
设置完成之后,等待SDK自动下载更新即可。
对于从Eclipse迁移到Android Studio的建议:
1)不要使用Android Studio的自动迁移功能将项目从Eclipse自动转换为Android Studio工程结构,建议重新建立一个纯净的Android Studio工程,并手动拷贝src和lib等文件;
2)Android Studio不要复用Eclipse之前使用的SDK,建议使用Android Studio提供的SDK Manager重新下载;
3)一句话:保证Android Studio的纯正性。
Android NDK的安装及使用
由于并不是每个app都会用到NDK,事实上,大多数app都不需要用到NDK,因此,NDK的安装独立成一节,不感兴趣的筒靴可以跳过,NDK的安装相对简单,只需要到NDK Downloads或者AndroidDevTools下载NDK的压缩包,然后解压到本地目录中即可。
接着在Android工程根目录的local.properties文件中新增ndk.dir变量,其值指向ndk绝对路径,例如:
<code class="hljs vala has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; "><span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">## This file is automatically generated by Android Studio.</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; "># Do not modify this file -- YOUR CHANGES WILL BE ERASED!</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">#</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; "># This file should *NOT* be checked into Version Control Systems,</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; "># as it contains information specific to your local configuration.</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; ">#</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; "># Location of the SDK. This is only used by Gradle.</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; "># For customization when using a Version Control System, please read the</span>
<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box; "># header note.</span>
sdk.dir=/Users/guhaoxin/Library/Android/sdk
ndk.dir=/Users/guhaoxin/Library/Android/android-ndk-r10</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li><li style="box-sizing: border-box; padding: 0px 5px; ">4</li><li style="box-sizing: border-box; padding: 0px 5px; ">5</li><li style="box-sizing: border-box; padding: 0px 5px; ">6</li><li style="box-sizing: border-box; padding: 0px 5px; ">7</li><li style="box-sizing: border-box; padding: 0px 5px; ">8</li><li style="box-sizing: border-box; padding: 0px 5px; ">9</li><li style="box-sizing: border-box; padding: 0px 5px; ">10</li><li style="box-sizing: border-box; padding: 0px 5px; ">11</li></ul>
NDK的使用主要有两种形式,一种是拿到第三方的so文件,我们通过JNI封装其提供的native接口给Java层使用另一种是自己使用C/C++编写底层代码,然后编译生成so文件,接着重复第一种的做法。具体实现还是比较麻烦的,篇幅比较大,需要用到的筒靴可以参考以下这几篇文章:
等有时间再结合实际项目整理一篇Android Studio+NDK的入门指引。
Android Studio的基本用法
Android Studio的基本用法就比较琐碎了,篇幅也比较大,已经有很多文章进行过介绍,这里就不展开讲解了,想了解的可以参考@StormZhang的系列教程,教程中基于Android Studio 1.0 版本进行介绍,跟最新的有些许差别,但并不影响我们学习。
Android Studio系列教程:
Android Gradle Plugin基本用法
看完上面的系列教程,应该对Gradle也有了基本的认识,但还不够,只有认真看完Gradle Plugin User Guide 才能基本应付日常的开发工作,如果想进一步进阶,可阅读完整版Gradle User Guide。当然,根据王守仁先生的“知行合一”思想,看的再多,不在项目中好好操练,那也是白费力气的。
当然,如果你发现gradle编译速度很慢,可以尝试Boosting the performance for Gradle in your Android projects这篇文章中介绍的方法,兴许对你有用。
通过Gradle发布项目到JCenter
目前Github上面的大多数Android项目都从Eclipse+Ant模式迁移到了Android Studio+Gradle开发模式,为了方便函数库的依赖管理,都会将函数库生成的压缩包发布到JCenter上面,这样第三方工程需要使用该函数库,只需要在build.gradle文件中加入一行代码即可,例如我的工程使用到EventBus,那么设置如下:
<code class="hljs matlab has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial; ">dependencies <span class="hljs-cell" style="box-sizing: border-box; ">{
compile <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box; ">'de.greenrobot:eventbus:2.4.0'</span>
}</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; "><li style="box-sizing: border-box; padding: 0px 5px; ">1</li><li style="box-sizing: border-box; padding: 0px 5px; ">2</li><li style="box-sizing: border-box; padding: 0px 5px; ">3</li></ul>
那么问题来了,如果我自己开发了一个函数库,也要以这样的方式提供给第三方使用,那么就需要把这个项目发布到JCenter上面。
当然了,前提是你这个函数库是开源的或者是经过混淆的,否则就趁在被公司开除之前放弃这种想法,老老实实直接提供Jar包给第三方好了。
关于整个的发布流程,已经有很多不错的文章介绍了,建议看Android Studio发布项目到Jcenter和Android 项目打包到 JCenter 的坑这两篇文章就够了。
JDK版本的降级
关于Android Studio使用的JDK版本是否需要从JDK7或者JDK8降级到JDK6。
本文转载于http://blog.csdn.net/asce1885/article/details/46467885