Android Studio最新配置教程2016

千磨万击还坚劲,任尔东西南北风。这篇文章主要讲述Android Studio最新配置教程2016相关的知识,希望能为你提供帮助。


http://blog.csdn.net/wen_demo
一、android  studio  基本简单介绍 
1.Android  studio和Eclipse的差别: 
1、Studio中有Project和Module的概念,Studio中一个窗体仅仅能有一个项目,即Project,代表一个workspace。可是一个Project能够包括多个Module。比方你项目引用的Android  Library,  java  Library等,这些都能够看做是一个Module。
 
2、文件夹中将java代码和资源文件(图片、布局文件等)所有归结为src。在src文件夹下有一个main的分组。同一时候划分出java和res两个文件夹。java文件夹则相当于Eclipse下的src文件夹。res文件夹结构则一样.
 
2.gradle构建工具简单介绍 
1、Gradle是一种依赖管理工具。Gradle的核心是一个丰富的可扩展的基于Groovy的领域特定语言(DSL)。Gradle通过提供说明性语言元素将说明性构建推到下一层,您能够组装。这些元素也提供build-by-convention支持Java、Groovy、OSGi、Web和Scala项目。
很多其它,这个说明性语言是可扩展的。
加入自己的新语言元素或提高现有的。从而提供简洁、易于维护和理解构建。

 
 
二、Android  Studio安装配置 
1.基本安装 A、安装Android  Studio
安装过程和一般安装过程一致,下载地址:
--》http://developer.android.com/sdk/index.html(需Fan—Qiang)
--》http://www.android-studio.org/index.php/download 
眼下最新的版本号为  V-1.3(141.1980579)
 
Android Studio最新配置教程2016

文章图片

B、安装Gradle
  下载地址:
--》http://services.gradle.org/distributions
眼下最新的版本号为  gradle-2.5-all  (建议使用gradle-2.4-all.zip)
 
Android Studio最新配置教程2016

文章图片

 
2.基本配置1、配置Android  Studio(简单的安装过程请參见)
安装完毕之后进入Setting  完毕SDK的关联配置(Setting中能够进行IDE的全部配置。详细配置方法见https://www.jetbrains.com/idea/help/android.html)
 
Android Studio最新配置教程2016

文章图片

 
假设电脑硬件配置比較高建议对Android  Studio进行相关的环境參数配置,这样执行会比較的流畅。
 
Android Studio最新配置教程2016

文章图片

 
2、配置Gradle
下载完毕之后选择目标解压位置(随意无中文路径)进行解压。而且在path中改动环境变量  :  X:\XX\gradle-2.4\bin,注意  :  Android  Studio必须使用gradle1.9以上版本号  ,  才干够使用,  否则会提示报错。
測试gradle  ,  在cmd(管理员)模式下,  输入:  gradle  -version  就可以:
 
 
Android Studio最新配置教程2016

文章图片


三、Android  Studio  使用相关 1.新建项目project完毕环境配置之后启动Android  Studio
(假设已经构建过项目的老用户须要在  File  选项下
close  project  关闭当前的project  )
 
 
Android Studio最新配置教程2016

文章图片

进入主界面之后新建
 
Android Studio最新配置教程2016

文章图片

Android Studio最新配置教程2016

文章图片

相应的编辑框分别为:project名(包名后缀)、公司名(包名前缀)、project文件夹
 
进行新建的项目内型进行选择,Phone、wear、TV...以及对应的SDk版本号
 
 
 
2.导入Studio项目project 
Android Studio最新配置教程2016

文章图片

点击  open  an  existing  Android  Studio  project  进行Studio项目的导入,已经构建过的项目会自己主动关联Android  Studio的图标。
Android Studio最新配置教程2016

文章图片


3.导入Eclipse项目project从Eclipse中导出
                1.将你的ADT插件版本号升级到22.0以上。

                2.在Eclipse中。选择File--> Export。

                3.在弹出的导出窗体中,打开Android的目录,选择“Generate  Gradle  Build  Files”。

                4.选中你想要导入到Android  Studio中的项目。Finish。
 
Android Studio最新配置教程2016

文章图片


PS:导出的项目将会和原来的项目在同一文件夹。覆盖原来的同一时候。会新增一个叫build.gradle的文件,导入Android  Studio时将首先读取这个文件。

 
Android Studio最新配置教程2016

文章图片

导入到Android  Studio
                1.在Android  Studio  中,首先关掉你当前的打开的项目。
                2.在欢迎界面,点击Import  Project(注:也是能够直接在菜单选择Open  project)
                3.选中你在Eclipse中导出的项目,展开文件夹,点击build.gradle文件,然后OK
                4.在之后的弹出对话框中,会要求你选择Gradle的配置,选中Use  gradle  wrapper.(注:也能够自己定义你本机装的Gradle,这样构建project会比較的高速)。
               
               
PS:假设没有Grade  build文件。也是能够将普通的安卓项目导入到Android  Studio中。它会用现有的Ant  build.但为了更好地使用之后的功能和充分使用构建变量,还是强烈地建议先从ADT插件中生成Gradle文件再导入Android  Studio
4.项目相关构建build.gradle配置1.根文件夹的./build.gradle
2.app  Moudle下的./app/build.gradle
 
 
Android Studio最新配置教程2016

文章图片

5. 6.Android  Studio引用aaraar
何为aar?大家都知道jar文件把。假设你有一个Android  Library项目。能够非常easy的导出jar文件,然后在其它项目中非常方便的引用,aar和jar类似,差别就是一个Android  Library项目导出的jar文件不能包括资源文件。比方一些drawable文件、xml资源文件之类的,所以这就有非常大的限制,在gradle之前我们要引用带资源文件的Android  Library必需要把整个library导入进来进行引用,可是有了gradle之后。Android  Library项目能够直接导出成aar,然后其它项目像引用jar的方式直接方便的引用。
 
导出aar
首先Android  Library项目的gradle脚本仅仅须要在开头声明
apply  plugin:  ‘com.android.library‘
之后就和导出apk文件一样的方法,运行  ./gradlew  assembleRelease。然后就能够在  build/outputs/aar  目录里生成aar文件
 
① 引用本地的aar
生成aar之后下一步就是怎样引用本地的aar文件?本地的aar文件并没有像引用jar文件这么简单,官方也没有提供解决方式。好在国外的一些前辈总结出了方法。以下就以test.aar文件为例来详述下方法
 
1、把aar文件放在一个文件文件夹内。比方就放在libs文件夹内
 
2、在app的build.gradle文件加入例如以下内容
 
repositories  {
        flatDir  {
                dirs  ‘libs‘  //this  way  we  can  find  the  .aar  file  in  libs  folder
        }
}
3、之后在其它项目中加入一句gradle依赖便方便的引用了该library
 
 
dependencies  {
        compile(name:‘test‘,  ext:‘aar‘)
}
 
② 引用远程仓库的aar
 
这里以maven为例,当然也能够使用其它类型的仓库,比如  Ivy。
仅仅须要在jar包引用方式后面加入一个@aar就能够了。

compile  ‘com.alibaba:fastjson:[email  protected]‘
 
包依赖(jar)
compile  group:  ‘com.alibaba‘,  module:  ‘fastjson‘,  version:  ‘latest.integration‘
能够简写成
compile  ‘com.alibaba:fastjson:latest.integration‘
latest.integration能够替换成详细的版本号号,这里是获取server上的最新版本号。
 
去掉反复依赖
compile  ‘com.alibaba.fastjson.latest.integration‘  {
        exclude  module:  ‘annotations‘,  group:  ‘com.google.android‘
}
 
7.加速Android  Studio/Gradle构建 开启gradle单独的守护进程
在以下的文件夹以下创建gradle.properties文件:
·  /home/< username> /.gradle/  (Linux)
·  /Users/< username> /.gradle/  (Mac)
·  C:\Users\< username> \.gradle  (Windows)
并在文件里添加:
org.gradle.daemon=true
同一时候改动项目下的gradle.properties文件也能够优化:
#  Project-wide  Gradle  settings.#  IDE  (e.g.  Android  Studio)  users:#  Settings  specified  in  this  file  will  override  any  Gradle  settings#  configured  through  the  IDE.#  For  more  details  on  how  to  configure  your  build  environment  visit#  http://www.gradle.org/docs/current/userguide/build_environment.html#  The  Gradle  daemon  aims  to  improve  the  startup  and  execution  time  of  Gradle.#  When  set  to  true  the  Gradle  daemon  is  to  run  the  build.#  TODO:  disable  daemon  on  CI,  since  builds  should  be  clean  and  reliable  on  serversorg.gradle.daemon=true#  Specifies  the  JVM  arguments  used  for  the  daemon  process.#  The  setting  is  particularly  useful  for  tweaking  memory  settings.#  Default  value:  -Xmx10248m  -XX:MaxPermSize=256morg.gradle.jvmargs=-Xmx2048m  -XX:MaxPermSize=512m  -XX:+HeapDumpOnOutOfMemoryError  -Dfile.encoding=UTF-8#  When  configured,  Gradle  will  run  in  incubating  parallel  mode.#  This  option  should  only  be  used  with  decoupled  projects.  More  details,  visit#  http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projectsorg.gradle.parallel=true#  Enables  new  incubating  mode  that  makes  Gradle  selective  when  configuring  projects.  #  Only  relevant  projects  are  configured  which  results  in  faster  builds  for  large  multi-projects.#  http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demandorg.gradle.configureondemand=true
同一时候上面的这些參数也能够配置到前面的用户文件夹下的gradle.properties文件中,那样就不是针对一个项目生效。而是针对全部项目生效。

上面的配置文件主要就是做,  增大gradle执行的java虚拟机的大小,让gradle在编译的时候使用独立进程。让gradle能够平行的执行。
改动android  studio配置
在android  studio的配置中。开启offline模式。以及改动配置。主要是在这个地方配置的仅仅会在ide构建的时候生效,命令行构建不会生效。

命令行构建
基于上面的配置。命令行构建时在命令后面加上这个參数就可以  --daemon  --parallel  --offline。
 
三、Android  Studio  使用常见错误 
//设置脚本的执行环境
 
 
      buildscript  {
                  //支持java  依赖库管理(maven/ivy),用于项目的依赖。
          repositories  {
                        mavenCentral()
                }
                //依赖包的定义。
支持maven/ivy,远程,本地库,也支持单文件
                dependencies  {
                        classpath  ‘com.android.tools.build:gradle:0.4‘
                }
        }
        //声明构建的项目类型。这里当然是android了
        apply  plugin:  ‘android‘
        //设置编译android项目的參数
        android  {
                compileSdkVersion  17
                buildToolsVersion  "17"
         
                defaultConfig  {
                        minSdkVersion  8
                        targetSdkVersion  17
                }
                //Android默认配置
                sourceSets  {
                        main  {
                                manifest.srcFile  ‘AndroidManifest.xml‘
                                java.srcDirs  =  [‘src‘]
                                resources.srcDirs  =  [‘src‘]
                                aidl.srcDirs  =  [‘src‘]
                                renderscript.srcDirs  =  [‘src‘]
                                res.srcDirs  =  [‘res‘]
                                assets.srcDirs  =  [‘assets‘]
                        }
                        //測试所在的路径,这里如果是tests目录。没有能够不写这一行
                        instrumentTest.setRoot(‘tests‘)
                }
                 
                //这个是解决lint报错的代码
                lintOptions  {
                        abortOnError  false
                }
                /**
                  *  签名设置
 
  */
                signingConfigs  {
                        myConfigs  {
                                storeFile  file("签名文件地址")
                                keyAlias  "..."
                                keyPassword  "..."
                                storePassword  "..."
                        }
                }
                /**
                  *  混淆设置
                  */
                buildTypes  {
                        release  {
                                signingConfig  signingConfigs.myConfigs
                                runProguard  true
                                proguardFiles  getDefaultProguardFile(‘proguard-android.txt‘),  ‘proguard-rules.pro‘
                        }
                }
                /**
                  *  渠道打包(不同包名)
                  */
                productFlavors  {
                        qqqq  {
                                applicationId  =  ‘包名‘
                        }
                        hhhhh  {
                                applicationId=‘包名‘
                        }
                }
        }
        /**
          *  .so文件的导入
          */
        task  copyNativeLibs(type:  Copy)  {
                from  fileTree(dir:  ‘libs‘,  include:  ‘armeabi/*.so‘)  into  ‘build/lib‘
        }
 
        tasks.withType(Compile)  {
                options.encoding  =  "UTF-8"
        }
         
        tasks.withType(Compile)  {
                compileTask  ->   compileTask.dependsOn  copyNativeLibs
        }
        clean.dependsOn  ‘cleanCopyNativeLibs‘
        tasks.withType(com.android.build.gradle.tasks.PackageApplication)  {  pkgTask  ->
                pkgTask.jniFolders  =  [new  File(buildDir,  ‘lib‘)]
        }
        //依赖库
        dependencies  {
        compile  fileTree(dir:  ‘libs‘,  include:  [‘*.jar‘])
        }
 
AndroidStudio自己定义属性xmlns无法识别问题解决 in  Gradle  projects,always  use  http://schemas.android.com/apk/res-auto  正如in  Gradle  projects,always  usehttp://schemas.android.com/apk/res-auto  for  custom  attributes所说的
将eclipse中
http://schemas.android.com/apk/res/com.xxx.xxx   
换成
http://schemas.android.com/apk/res-auto   

这样Gradle就会自己主动查找自定属性的
 
Android  Studio  svn的使用


单文件  签入当文件,右键subversion  Add
文件红色:表示文件没有加入到server
绿色:表示没有更新新的改动到server
普通黑色:表示和server同步
 
单个文件签入签出操作:右键subversion
Add,加入到server
Commit:提交
Update:更新,获取新版本号
Integrate:合并
注意:SVN和VSS不同签入前假设文件被其它人改动须要比較版本号怎样其它改动有效须要合并签入






未完..待续


【Android Studio最新配置教程2016】













    推荐阅读