Android Studio 入门

本文适用于从Eclipse转AndroidStudio的开发者

最近打算写一个系列的android初级开发教程,预计40篇以上的文章,结合我实际工作中的经验,写一些工作中经常用到的技术,让初学者可以少走弯路,这是本系列的第一篇文章,345大神写的。

原文地址

一. 下载安装

  1. JDK安装并配置JAVA_HOME环境变量

    这个就略过了,纯小白请自行百度
    
  2. Android Studio安装
    截止到2016年4月9日Android studio的最新稳定版本为2.0,推荐使用该稳定版本。
    

下载地址:

  • 下载地址1 官网下载页面传送门

    如果下载速度很慢,请复制下载连接到迅雷,万能的迅雷会帮你提速的。
    如果根本打不开请移步地址2
    
  • 下载地址2 AndroidDevTools 

    你需要的这里基本都会有,强烈推荐到这里下载。 
    如果本地已经下载有sdk的话推荐下载zip免安装版,第一次启动的时候配置下sdk目录就好。

二. 第一次启动

  1. 安装完过后不要着急启动,首次启动会弹出检查sdk更新组件等设置,点击finish可能会去下载,如果没有设置代理的情况下,这个界面会卡很久。

解决方法

  • 关闭android sutdio,打开android studio安装目录下的bin文件夹,找到idea.properties并打开。
  • 在该文件尾部添加如下代码:

# 禁用首次检查sdk功能
disable.android.first.run=true
  • 重启android studio就不会再出现sdk设置检查界面了。

    1. 启动完成会看到下面的界面 

点击Configure选择SDK Manger可以配置SDK目录等属性 
 

点击左下角连接 启动SDK Manger 配置SDK更新镜像 
我想说这一步在天朝是必须的,原因我想你懂的

下面说一下SDK更新镜像网站的使用方法: 
具体请参考AndroidDevTools 
1. 启动 Android SDK Manager ,打开主界面,依次选择『Tools』、『Options…』,弹出『Android SDK Manager - Settings』窗口;

  1. 在『Android SDK Manager - Settings』窗口中,在『HTTP Proxy Server』和『HTTP Proxy Port』输入框内填入上面镜像服务器地址(不包含http://,如下图)和端口,并且选中『Force https://… sources to be fetched using http://…』复选框。设置完成后单击『Close』按钮关闭『Android SDK Manager - Settings』窗口返回到主界面;
  2. 依次选择『Packages』、『Reload』。 
    选择镜像网站的时候要注意的是,并不是所有的适合别人的就适合你还有可能根本无法更新,由于服务器远近带宽的问题,你应该选择适合自己的镜像,怎么选择。。。。我想说设置成功后选择更新个没下载的文件能成功下载更新并且速度不慢的就是合适的
    
  3. 主题设置

这个没什么好讲的,但是追求逼格喜欢黑色主题的小伙伴在意这个的不少,这里就上图说明一下。 
启动页面点击 configure->选择Prefrences->Appearance->Theme->Darcula就是那个黑色Visual Studio风格主题 ->apply完事 

如果想要更多字体关键词颜色什么的个性化配置的话推荐到下面的网址下载 
http://color-themes.com/?view=index 
选择喜欢的主题下载,下载到的是个jar文件,使用方法:

    在AS中选择File->import settings ->选择下载的jar文件->勾选editor color 确认

三. 项目工程

  1. 新建工程

跟着引导一步步来就好了,注意最低兼容版本的选择,新建项目的时候没有提供编译版本的选项,默认当前安装的sdk的最高版本,AS给提供了几个Activity模版,模版的实现都是比较经典的,推荐新建一个看一看。 

  1. 工程目录结构 

新建完一个工程 如图点击左上结构视图切换,切换到Project目录结构(开发中常用的是Android视图,比较简洁) 其中 app2和mylibrary是为了方便后面讲解新建完成后手动添加的module默认新建工程是没有的。

  • MyApplication文件夹地位相当Eclipse的Workspace

    不同的是AS工程目录下面多了用于全局项目的配置文件,比较重要的是local.properties、setting.gradle、gradle.properties 、build.gradle和gradle文件夹
    
    • local.properties 
      其中可以设置你的 sdk、ndk配置,一般情况下不需要改
    • settings.gradle 
      该文件中就仅仅只包含了一句话,声明所包含的module 
      比如上面的工程包含三个module 

      include ':app', ':app2', ':mylibrary' 
    • gradle.properties 
      gradle编译用到的一些参数设置 一般情况下不需要改
    • buiLd.gradle 
      定义版本仓库的依赖和一些gradle的命令一般情况下不需要改
  • Module目录 

    这个目录跟eclipse目录很像 很容易就能理解各种目录的对应关系,比较特别的是比eclipse多了一系列mipmap文件夹,mipmap和drawable文件夹一样都是用来存放图片的,按官方文档说法是 mipmap文件夹只放应用图标。其他需要使用的drawable资源象之前一样放到对应的drawable文件夹。

    新建moudle时drawable文件夹只有默认不带分辨率参数的,适用于不同分辨率的文件夹需要自己手动建,AS提供了便捷的创建方式

    在moudle上右键选择Android resource directory,分别选择类型drawable 左侧列表选择density 选择对dpi 
    如下图 



    其他res文件的创建同理。

    1. 打开网上下载AS工程gradle报错的问题

有时候我们从网上下载了一个demo工程打开后gradle报错不能运行,这种情况大多数由于gradle版本不一致,AS下载对应版本失败的问题引起的,一般情况下有两种解决方法 
* 手动下载对应gradle版本到本地目录

    这种方式不推荐有兴趣的自行搜索

* 修改要打开工程的gradle配置 

参考本地新建工程的相同文件 
gradle-wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
//修改版本号与本地工程文件相同

build.gradle

dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0'
        //修改版本号与本地工程文件相同
}

四. 添加依赖

了解了项目结构之后简单的编译运行调试一般来说应该没有什么问题了,毕竟菜单栏,底部功能窗口功能提示都很明确,下面来说一说比较遇到问题的地方:添加依赖项目或运行第三方工程报错的问题。

添加依赖一般有三种方式 
1. 添加代码仓库的依赖

这种方式最简单直接在项目module的build.gradle 里面的dependencies 里添加一句话,然后重新构建即可,如:


1

2

3

4

5

6

7

8

dependencies {

    compile fileTree(dir: 'libs', include: ['*.jar'])

    testCompile 'junit:junit:4.12'

    compile 'com.android.support:appcompat-v7:23.3.0'

    compile 'com.android.support:design:23.3.0'

    //添加了OKHttp的依赖

    compile 'com.squareup.okhttp3:okhttp:3.2.0'

}

 可以手动添加也可以右键项目在open module settings里搜索添加(推荐这种方式) 


AS会自动联网下载添加的依赖 这个一般不需要FQ
  1. jar包的依赖

这个是最简单的也不用联网,和eclipse一样把jar包拷贝到libs文件夹内,然后需要重新构建一下项目 点击菜单栏的构建按钮即可如图 
 
构建完成在左侧目录栏里的jar文件左侧应该会有尖头可以展开查看jar包内容 

有的jar还需要关联.so库 这时候只需要在src目录的main文件夹下面建一个名为jniLibs的文件夹将so库拷贝进去即可(与res目录同级) 
 
3. libray项目的依赖

很多时候我们的要用到从github上下载的项目,把其中提供的library添加到我们的项目中,方法如下 首先导入module然后添加依赖 
打开project structure -> 添加新moudle ->在下载的工程文件中 选择要导入的library的module 
注意不是导入下载的整个工程文件夹 而是选择其中的module文件夹 



把导入的library添加到目的项目的依赖中 

当导入的library里的项目build.gradle文件里包含一些上传到版本仓库的信息的话导入过后可能会报错,这时候只需要把不必要的信息注释掉即可,需要保留的是编译配置,依赖关系,目录配置。如下

apply plugin: 'com.android.library'
//项目编译信息
android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

}
//依赖信息
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.2.1'
    compile 'com.android.support:design:23.2.1'
}

 

当然也可以手动把module文件夹拷贝到工程目录中然后修改settings.gradle文件,不过不推荐这种方式。

五. 快捷键

AS的自动提示功能很强大,有输入过后会自动弹出提示不需要像Eclipse一样按alt+/才提示,至于其他AS的快捷键很多就不一一说明了, 上个图拿去自行修炼吧 

六. 插件安装

打开Setting页面 找到Plugins 搜索安装 如图 

推荐的几个AS插件,具体用法请自行百度 
1. GsonFormat 
2. android-butterknife-zelezny 
3. JsonOnlineViewer

七. 打多渠道包

国内上线APP一般要从多渠道发布,为了统计渠道安装量一般需要每个渠道生产一个安装包,AS自带多渠道打包功能,多渠道打包功能绝对是AS最实用的功能之一,这里重点讲一下。

  1. 生成签名文件

签名文件可以在build->generate signed apk -> 选择项目 next ->create new生成,方式与eclipse差不多 

  1. 设置打包用的签名文件

打开module setting 新建一个signing项 选择签名文件 填写签名文件的密码别名等 

  1. 新建Flavors配置

作为示例我新建了三个配置并选择打包用到的签名配置 一个offline_debug、一个release_360、一个release_baidu

  1. 修改module的build.gradle和Mainfest文件

按照上一步配置好之后,build.gradle里会多出productFlavors和singConfig配置,我们要修改的是productFlavors部分。 
如何修改我们来举例说明

这是build.gradle文件内修改的部分

defaultConfig {
        applicationId "com.example.mark.myapplication"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        //BuildConfig.IS_SIGN = false
        buildConfigField "boolean", "IS_SIGN", "false"
    }
    productFlavors {
        offline_debug {
            signingConfig signingConfigs.signConfig
            //这里演示的是一个变量的写法
            manifestPlaceholders = [APP_NAME: "Debug版本"]
        }
        release_360 {
            signingConfig signingConfigs.signConfig

            //BuildConfig.IS_SIGN = true
            buildConfigField "boolean", "IS_SIGN", "true"
            //这里演示的是有多个变量的写法
            manifestPlaceholders = [APP_NAME: "360版本", EXAMPLE: "360"]
        }
        release_baidu {
            signingConfig signingConfigs.signConfig
            buildConfigField "boolean", "IS_SIGN", "true"
            manifestPlaceholders = [APP_NAME: "百度版本", EXAMPLE: "baidu"]
        }
    }

其中defaultConfig内的 buildConfigField “boolean”, “IS_SIGN”, “false”一句 是在构建项目生成的BuildConfig类中添加一个名为 IS_SIGN 的bool变量,并赋值为false。 

这个变量是可以在代码里使用的,如下面的代码可以用来切换线上线下的请求地址

public static String BASE_URL;
    static {
        if(BuildConfig.IS_SIGN){
            BASE_URL = "线上地址";
        }else{
            BASE_URL = "线下地址";
        }
    }

productFlavors 内的manifestPlaceholders = [APP_NAME: “Debug版本”] 一句的含义是 将AndroidManifest.xml文件里的变量APP_NAME替换为冒号后面的字符串,这句是只有一个要替换的变量的写法,后面you多个变量的写法举例。这个APP_NAME在Manifest文件中的定义格式如下 ${变量名} 在打包的时候gradle会自动把这个占位变量给替换掉。

<activity
            android:name=".LoginActivity"
            android:label="${APP_NAME}">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

 

这种变量定义可以出现在Mainfest中任何需要字符串的位置,我上面只是一个示例,请活学活用不要照搬照抄。

  1. 打包

同时选中你要打包的配置项 点击finish 等一会就会同时生成多个APK。 

推荐下自己创建的android QQ群: 202928390欢迎大家的加入.

时间: 2024-09-27 03:10:00

Android Studio 入门的相关文章

Android Studio 入门(转)

本文适用于从Eclipse转AndroidStudio的开发者 最近打算写一个系列的android初级开发教程,预计40篇以上的文章,结合我实际工作中的经验,写一些工作中经常用到的技术,让初学者可以少走弯路,这是本系列的第一篇文章,345大神写的. 原文地址 一. 下载安装 JDK安装并配置JAVA_HOME环境变量 这个就略过了,纯小白请自行百度 Android Studio安装 截止到2016年4月9日Android studio的最新稳定版本为2.0,推荐使用该稳定版本. 下载地址: 下载

Android应用性能优化最佳实践.1.2 Android Studio使用入门

1.2 Android Studio使用入门 1.2.1 Android Studio安装 这里我们以在Windows系统上安装Android Studio为例,具体的安装步骤如下: 1)安装JDK,且为JDK 1.6及以上版本. 2)下载Android Studio安装包:developer.android.com/sdk/installing/studio.html. 3)单击安装包开始安装,首先进入选择组件界面,如图1-1所示.   图1-1 选择安装组件 一般已经安装Eclipse或其他

Android Studio jni开发入门——看我就够了!

本文记录一下Android Studio 进行jni开发的基础配置以及入门教程,想当初使用eclipse配置ndk环境都难,现在基本都向AS转型,特此给需要帮助的新手村的同学们少走弯路 一.环境配置 主要需要配置的就是NDK(Native Development Kit),现在Android studio很便利,可以一键下载: file → setting → 按截图找到如下路径 → 选择NDK → 确定应用下载  安装完成以后就可以开撸了 二.jni hello world! 1. 新建一个项

《Android App开发入门:使用Android Studio 2.X开发环境》——2-6 输入字段 EditText 组件

2-6 输入字段 EditText 组件 除了按钮外,另一种常见的基本输入组件是EditText. getText():获取用户输入的文字 EditText 组件的用途是让用户输入文字,在程序中可用 getText()获取用户输入的内容. getText() 方法返回的是 Android SDK中定义的 Editable 类型的对象,因此要当字符串处理,必须再调用 toString() 方法进行转换. setText():设置 TextView 显示的文字 如果要设置 TextView 组件上显

《Android App开发入门:使用Android Studio 2.X开发环境》——第 1章 使用 Android Studio 开发 Android App

第 1章 使用 Android Studio 开发 Android App 1-1 创建第一个 Android App 项目 1-2 在计算机的仿真器上执行 App 1-3 Android Studio 快速上手 1-4 Android 项目的构成 本章将介绍如何使用 Android Studio 集成开发环境开发 Android App.我们将先说明在 Android Studio 中如何添加.创建 Android App,接着说明如何将完成的程序( App)放在仿真器上执行与测试.让读者先体

《Android App开发入门:使用Android Studio 2.X开发环境》——导读

前 言 学习 Android 程序设计一直困扰着许多初学者,原因有两个.首先,必须学会使用 Java 程序设计语言,并且要懂 Android 的 XML词汇,然后才能开始学习 Android 的程序设计.其次,在学习的过程中常见到一些程序设计老手所使用的行话与习惯,初学者常会苦思不得其解,从而导致在学习中产生挫折感.困顿不前.鉴于此,本书针对 Android 的初学者设计了一套学习流程,期望降低初学者学习的门槛,让学习曲线平滑.顺畅,使初学者能迅速掌握 Android 程序设计的重点,而不用浪费

《Android App开发入门:使用Android Studio 2.X开发环境》——2-5 开始动手编写程序

2-5 开始动手编写程序 在这一节中,本书将会带领大家制作第一个互动 Android App.这个范例执行后会显示"Hello world!"字符串,并且可在用户单击屏幕上的按钮时自动放大文字. 我们会遵循设计 Android App 的流程,先将视觉外观的部分设计好,再加入控制互动行为的程序逻辑.通过实际演练这个范例可以对 Android App 的设计有更清楚的认识. 创建项目后,会自动打开项目并以图形布局编辑器打开布局文件. 在新建的 Android项目中,默认的布局含有两个组件

《Android App开发入门:使用Android Studio 2.X开发环境》——2-8 修改项目的程序包名称和应用程序 ID

2-8 修改项目的程序包名称和应用程序 ID 如果用户将第 2-5 节的 Ch02_Button 范例部署到手机上执行,然后又把第 2-6 节的范例 Ch02_EditText 部署到手机上执行,会发现手机的应用程序列表中只有 Ch02_ExitText,却没有 Ch02_Button. 在第1章曾经提过,程序包名称是 Android App 在手机上的身份证 ID,而 Ch02_ExitText 项目是从 Ch02_Button 复制而来的,它们的程序包名称相同(?ag.com.ch02_bu

《Android App开发入门:使用Android Studio 2.X开发环境》——2-4 组件的布局与属性设置

2-4 组件的布局与属性设置 为了方便用户设计 App,Android Studio 事先设计好了许多常用的视觉组件,我们只要把这些组件加到布局文件的布局编辑区(或单击下方的 Text 标签,切换到文本模式加入组件的标签),就可以很快地创建按钮.文本框.输入字段.多选按钮甚至图像等视觉组件. 每一个组件在程序执行时都有一个对应的 Java 对象,这个对象的类通常与在图形化的布局编辑器中看到的组件类相同.例如,显示"Hello World!"文字的是 TextView 类的组件,实际程序