前言

该文以Android Studio2.1.1(Bundle)为例。JDK使用的是1.8版本,也建议大家使用1.8版本。

使用技巧无先后顺序。

Android Studio 2.1.1

软件下载

目前,国内大家比较熟悉的应该是 Android Studio中国社区 ,每次Android Studio的更新版本都可以在这找到。

Android Studio使用技巧问答区

1、代码没有错误,但是爆红解决技巧

当我们写入一些代码的时候,可能有些代码是正确的,但是AS却说找不到,这时候我们清理一下缓存即可并重启AS即可解决这个问题。具体步骤是点击File-Invalidate Cache / Restart...即可。

2、编辑/打开另一个项目,下载GIt项目

标题可能说的有点模糊。一般情况下,每一个AS工作区对应一个项目(当然可以添加多个Modules)。假如,我们当前正在编辑的是A项目,我想打开B项目进行编辑,此时的做法也很简单。

方法一:点击File-Open... 然后选择一个Gradle项目即可。

方法二:点击File-Open Recent 然后选择一个项目打开即可。

如果我想关闭当前项目,并且打开B项目

方法三:点击File-Close Project,然后在打开的界面选择Open an existsing Android Studio Project选择一个本地项目打开即可。

下载Git项目

方法四:点击菜单栏的VCS-Checkout from Version Control-Git 在弹出的对话框输入项目的SSH地址即可下载。如下图:

下载Git项目.png

3、查看AS使用的SDk、JDk路径

File-Other Settings-Default Project Structure...

Project Structure.png

4、删除Module

了解Android Studio的应该知道其工作空间(Project)对应可以创建多个Module,而且可以对Module进行同时build等操作,当不需要这个Module,想要彻底删除它时,有两种方式(如删除下图的test Module):

即将要删除test Module.png

(1)右击MyApplication项目,选择Open Module Settings,选中要删除的Module(test),点击符号“—”进行删除,步骤如下图所示:

删除Module.png

移除Modul列表后.png

实际上,此时test仅仅是退出了Module列表(移除了对Project对Module的保护),并没有删除,此时对test右击,点击“Delete”则可,步骤如下图所示:

删除一个项目.png

(2)通过Android Studio对Module的保护机制去删除一个Module。

在Eclipse上,如果想要删除一个项目,直接右击选择“Delete”删除项目即可,但是在Android Studio只有把Module的保护机制删除才能对其删除,所以两者的不同就是Android Studio多了个保护机制,那么我们只要知道保护机制的原理即可。事实上,Module的保护机制是通过settings.gradle文件实现的,我们首先打开settings.gradle文件,内容图下图所示:

Module保护机制列表.png

代码如下:

include ':app',':test'

代码很显然,表示当前项目包括了两个Module,一个是app,另一个是test。当我们想删除test Module的保护机制,只需删除代码:':test',保存并重新执行gradle文件即可,具体步骤是:

1、删除代码:,':test'并保存;

2、点击菜单栏的Sync按钮,重新编译项目即可。

Sync Gradle.png

ps:实际上,该操作是可逆的!!!

5、把Eclipse项目移植到Android Studio 2.1.1

参考文章

将Eclipse代码导入Android Studio

镜像网站-techbrood

前提:ADT版本需要22以上。

查看ADT版本号。在Eclipse打开Help-Installation Details,然后选择Plugin-ins,如下图可看到当前使用的ADT版本为23。

ADT版本号.png

当前以一个Hello工程为例。步骤如下:

1、在Eclipse选择File-Export-Android-Generate Gradle Build File-Next,接着选择项目Hello,Next—Finish-Finish。此时,打开Hello项目目录。

创建Gradle相关文件.png

从图上可以看出,此时生成了Gradle相关的文件夹。

2、选择导入工程的结构方式。

一般情况下,导入Eclipse项目到Android Studio会有两种结构,一种是与Eclipse的项目文件结构相同,只是增加了IDE文件和Gradle相关文件;另一种则是符合Android Studio项目工程的结构,即Module包好Module。这两种结构的导入方式都是支持的。如下图,Open an existing Android Studio Project和Import Project都代表第一种结构。

选择导入结构方式.png

2.1第一种结构-保留Eclipse的项目结构

选择build.gradle文件导入项目,如下图所示(可能需要同步一下gradle版本):

Android Studio项目目录.png

此时,我们可以看一下这个项目存在多少个Module,点击Gradle选项卡。

仅有一个Module.png

从图上可以看出,当前项目只存在一个Module。

2.2选择Import Project

该方式也是选择build.gradle文件,其它步骤也都相同。

2.3符合Android Studio的项目结构

选择Import Project选项,不需要增加Gradle相关文件,直接选择项目名称,点击OK。

导入非gradle项目.png

这时候会弹出一个对话框,如下图所示,意思是根据Hello这个项目,导入一个复制Hello的项目,名称为Hello1,并且不去修改Hello项目。此处,选择“Next”。

Copy a project.png

对话框继续弹出。图片中包括了三个复选框,

第一、二项表示如果条件允许,利用gradle的依赖功能去代替jar包和库的加载。一般情况下,为了便于后面代码、jar包管理,这两项是勾选的。

第三个表示该项目、代码的命名方式采用驼峰命名法,也就是说会修改一些,不符合驼峰命名法的名称。

选择修改的内容.png

点击finish等待项目创建。当项目创建成功后,查看Gradle。如下图:

Android Studio项目创建成功.png

图片左侧可以看到项目结构与使用Android Studio创建新的项目的结构是相同的,右边可以查看到当前项目有两个Module,一个是根-Hello1,另一个是子Module-app。中间是一个txt文件——import-summary.txt,它主要描述了导入Eclipse项目过程中做了Android Studio什么事情,比如:Ignored Files表示没有导入的文件;Replaced Jars with Dependencies表示Eclipse里jar包的导入替换为gradle的依赖;Moved Fiels表示文件的剪切——把资源文件移动到了子Module的工程目录下;还有就是接下来的建议,比如文件的描述是建议build项目。最后,改文件是临时文件,一般情况下,项目创建完成后即可删除它。

3、构建apk

当项目导入成功后,点击菜单栏的Build-Build APK,当执行完成后能生成Hello-debug.apk和Hello-debug-unaligned.apk则表示代码无误,并构建成功。

build apk成功.png

6、 Android Studio快速编程技巧

PS:官网有一篇关于快速编程技巧的文章,点击上面标题即可访问(注:需要拨VPN)

文章表述的内容主要是写少量的代码并结合快捷键(Tab)就能敲出大量的代码。下面举个例子,假如需要在敲出下面的代码:

Toast.makeText(MyActivity.this, "这是一个Toast", Toast.LENGTH_SHORT).show();

如果在Eclipse软件下我们需要上面的代码,一般需要输入内容还是蛮多的,但是在Android Studio中只需要输入Toast和文本内容即可。具体步骤如下:

1、输入Toast

2、按下Tab键

3、输入文本内容“这是一个Toast”

4、再按下Tab键,让游标到达当前行的末尾即可。

英文水平不错的可以参考这篇文章: Writing More Code by Writing Less Code with Android Studio Live Templates 下面的这张图片就来自这篇博文,其作者是 Reto Meiter 。

PS:实际上,使用Enter键代替Tab键也是可行的,亲试可用!

7、Live Templates

其实上面的第6个技巧使用到的就是Live Templates,它的目的在于定义一些常用的方法,在编码过程中,当使用到这些方法时,敲下少量的代码就能通过代码模块自动生成相应的方法和方法体代码,这样大大提高了编码效率,而且令人兴奋的一点是,这些模板我们可以自定义。

自定义或者查看Live Templates的位置在:File-Settings-Editor-Live Templates。如下图,即使Toast的模板:

Live Templates for Toast

点击下面链接可以查看如果快速定义自己的Live Templates-- Live Templates教程

8、代码自动完成

代码自动完成

9、Project无法使用Instant Run(即时运行)功能

如下图所示,当我们首次运行一个demo Project时,很大程度上会出现以下的异常。异常信息显示,如果想要使用Instant Run功能,需要Android Studio允许adb集成功能(Enable ADB integration),一般我们需要手动去设置enable。

Error running app

手动设置 Enable ADB integration ,在Tools-Android-Enable ADB Integration,Enable ADB Integration前打上勾即可。如下图:

Enable ADB Integration.png

PS:请保证Instant Run是允许使用的,具体的查看位置在File-Settings-Build,Excution,Deploymeny-Instant Run,在第一个选项 Enable Instant Run to hot swap code/resource changes on deploy 前面的复选框是打钩的。

10、性能分析时,请关闭Instant Run功能。

当使用Android Monitor的Monitors选项查看调试应用情况并对其进行性能分析时,请关闭Instant Run功能。因为当更新方法时,会对结果造成略大的影响,此外Stub方法会使得堆栈跟踪。

关闭Instant Run功能可见第9个技巧点的PS部分。

12、Open Module Settings

参考: Android Studio 之 Gradle与Project Structure详解

Properties

Incremental Dex(增量dex)

其实跟增量包的理解差不多,我们在编译(Compile)apk时默认情况下会重新编译整个apk,如果这个属性设置为true则只会重新编译新增加或者修改的内容,这样就可以大大缩短编译时间了。

Source Compatibility(资源兼容性)

编译(Compile)应用时兼容的java版本。2.1.1的Android Studio不支持Java 8(jdk1.8),所以如果此处使用1.8会出错,但是是可以解决的。可以参照 技巧13 。

Flavors

Build Type

13、Android Studio支持java 8

Android学习总结(4)——Andorid Studio熟练使用相关推荐

  1. Andorid Studio 制作欢乐写数字(Timer启动+帧动画,Android开发面经分享

    什么是Kotlin? Kotlin,如前面所说,它是JetBrains开发的基于JVM的语言.JetBrains因为创造了一个强大的Java开发IDE被大家所熟知.Android Studio,官方的 ...

  2. android创建布局文件,android学习——Android Studio下创建menu布局文件

    一.问题: android studio项目中没有看到menu文件夹: 在android studio项目中想要添加menu布局文件,一开始我的做法是:直接在res文件夹右键选择xml文件来添加,如下 ...

  3. lldb硬件断点android,Andorid Studio NDK开发-LLDB调试

    LLDB是一个高效的c/c++的调试器,是与LLVM编译器一起使用,提供了丰富的流程控制和数据检测,有效的帮忙我们调试程序.LLDB也已经取代GDB成为XCode的默认调试器,Android Stud ...

  4. Android学习笔记(Android Studio)3-3(ProgressBar ProgressDialog)(加载进度条、转圈圈)UI组件之弹出组件

    Android学习笔记3-3 推荐新手向学习视频:B站https://www.bilibili.com/video/av38409964点我传送 3-3 ProgressBar & Progr ...

  5. Android学习笔记——Android 签名机制详解

    Android 签名机制详解 近期由于工作需要在学习 Android 的签名机制,因为没有现成资料,只能通过开发者文档和阅读博客的方式对 Android 签名机制进行大致了解.过程中查阅到的资料相对零 ...

  6. 一篇文章一张思维导图看懂Android学习最佳路线

    一篇文章一张思维导图看懂Android学习最佳路线 先上一张android开发知识点学习路线图思维导图 Android学习路线从4个阶段来对Android的学习过程做一个全面的分析:Android初级 ...

  7. Android学习第一书

    大家好,我是一名Facebook的工程师,同时也是<第一行代码--Android>的忠实读者. 虽然我最近几年是在国外读书和工作的,但是和很多人一样,我也非常喜欢郭霖的博客以及他写的< ...

  8. 《Android学习指南》目录

    转自:http://android.yaohuiji.com/about Android学习指南的内容分类: 分类 描述 0.学习Android必备的Java基础知识 没有Java基础的朋友,请不要先 ...

  9. Android 学习指南(2017版)

    Android 学习指南 不断有新人来询问如何学习Android,很多都是无从下手,没有任何概念.正好好久没写文章了,今天来整理一下Android学习大纲,同时也会附上部分学习资料,主要还是希望大家能 ...

最新文章

  1. JPPhotoBrowserDemo--微信朋友圈浏览图片
  2. 数据科学家需要了解的5大聚类算法
  3. 计算机管理损坏的图像,损坏的图像(打开软件出现)解决方法
  4. 实景三维系列4 | 为什么需要单体化
  5. mysql打包备份数据到_thinkPHP使用pclzip打包备份mysql数据库的方法
  6. MySQL优化之my.conf配置详解
  7. java栈顶元素_栈在Java类库中的实现
  8. php里运行js,在PHP 中运行JS - mickelfeng的个人空间 - OSCHINA - 中文开源技术交流社区...
  9. python导入模块以及类_python模块的导入以及模块简介
  10. Arduino笔记-数字输入(开关的正确使用)
  11. (79)FPGA如何处理跨时钟域问题-面试必问(三)(第16天)
  12. 基本操作1-本地仓库连接远程仓库
  13. Dynamics AX2012 从第一个字符串开始截取内容
  14. 传智播客python培训视频教程下载
  15. oracle执行计划分析
  16. Memcached缓存
  17. 移动互联网时代的失意者
  18. 2019.03.26 bzoj4444: [Scoi2015]国旗计划(线段树+倍增)
  19. js中的eval语法
  20. C语言基础1:初识C语言(转义、注释;数组、操作符、反码、补码、static、define、指针、结构体常变量;局部变量;作用域、生命周期)

热门文章

  1. 移除inline-block间隙
  2. linux系统键盘响应时间,怎样提高使用Linux键盘的效率
  3. c语言编程实现二叉树的镜像,C/C++知识点之C++实现利用(前序和中序生成二叉树)以及(二叉树的镜像)...
  4. python数据分析的发展前景_Python+BI分析5000条招聘数据,原来数据分析工作在这儿最好找...
  5. 智能计米器jk76怎么安装_春节智能锁消费指南:只看价格的后果有多严重?
  6. QT每日一练day18:文件IO
  7. android smart home,Android smart home system based on ATmega16
  8. linux不编译设备树,petalinux 编译时报设备树语义错误
  9. mysql数据库d导出数据_mysql数据库导入导出文件
  10. springcloud项目的启动顺序_spring boot/cloud 启动方式说明