前言
在上篇文章中我们简单的介绍了HelloWorld工程目录,在这一节我们将介绍一下常用的adb指令以及AndroidStudio的一些简单的配置。
常见android开发简写介绍
- adb: android debug bridge( android 调试桥) 建立手机与电脑直接的连接。adb运行的端口号是5037
- aapt: android application package tools 安卓应用程序打包工具
- ddms: dalvik debug manitor services 虚拟调试镜像服务
- file explorer: 手机上的文件目录
- /data/app:安装的第三方apk都在此目录
- /system/app: 系统预装应用apk在此目录
- /data/data:应用的私有目录,系统每安装一个新的应用程序,都会在此目录创建该应用包名的文件,用来存放该应用的私有数据,当应用卸载时,该包名的文件夹也会被删除。
- /sdcard :外部存储目录,一般会链接指向到另一个目录,用来存放大数据。
常用的adb指令
- adb shell df 查看系统盘符
- adb install apk路径 安装apk
- adb uninstall packagename; 卸载一个应用(好像是需要权限的)
- adb devices 列出所有连接的设备信息
- adb push 电脑路径 手机路径 :将电脑端文件放到手机端
adb pull 手机路径 电脑路径 :将手机端文件拉到电脑端
注意:多台设备的时候,推送文件到手机或者拉取文件到电脑上的的时候需要指定设备序列号: adb -p 序列号 手机路径 电脑路径
adb install [-r] apkpath ; 安装一个电脑端的apk文件。-r:强制安装
- adb kill-server 结束adb服务链接
- adb start-server 开启adb服务链接
- netstat-oan 查看端口: 查看端口
adb shell 进入当前设备的linux环境下(和linux操作环境一样),在shell操作环境下:
- ls -l 查看所有目录
- logcat 查看系统运行中的logcat
- adb remount 重新挂载分区
- adb shell + money -p packagename count;(count 测试次数, packagename 要测试的应用包名: 这条指令一般是在做monkey测试的时候用到,对于没有测试机的小伙伴来说,又要进行测试操作,可以使用这条指令来做测试。但是基本上都不会用到,因为即使没有测试机,现在也有很多云测平台可以帮助做测试工作,这条指令比较鸡肋。)
android上需要掌握的adb指令其实不多,掌握常用的几条就可以了,不过基本上你会linux指令,那么adb指令对你来说,也差不多是小菜一碟啦。如果你对linux指令不太熟悉,你又是做android开发的,那么你就只需要记住上面的一些指令就可以了。当然如果你想掌握更多的linux指令,我可以推荐一本《鸟哥的linux私房菜》,这本linux书籍是我看linux书籍中讲的最通俗易懂的一本书了,强烈推荐。
Android打包过程
虽然现在学android开发的小伙伴特别多,但是我相信,对绝大部分的初学者来讲,android的打包过程还是不是特别清楚,对于android的打包过程,如下所示。
首先,java源文件通过jdk编译生成 .class 文件, 然后.class 文件通过dx.bat编译成.dex文件,然后aapt将生成好的.dex文件和res资源目录,assets资源目录以及AndroidManifest.xml文件打包生成一个未加签名的apk文件,(注意,这个apk文件是无法安装的),最后IDE将未加签名的apk文件用签名工具加上签名生成的才是最终可以安装的apk。可能有的小伙伴会有疑问,我部署项目的时候并没有加上签名啊,但是为什么是可以安装的呢? 这点就要归功于我们的编译器了,由于我们的编译器太智能了,它在帮你把项目部署到手机上的时候,就已经给你加上了签名,只不过加上的是默认签名而已。如果你需要将你的应用发布到市场上,必须加上自己的签名才可以发布。
那么默认签名的密钥的位置在哪里呢?如下,我已经帮你们找出来了。如下图所示。
如果你的找不到,我推荐给你们一款强大的全局搜索工具,searchEverything,这全局搜索工具比较强大。就贴个软件截图。强大之处小伙伴们自己体会吧。
关于测试方面
测试方面我了解的不多,这个一般都是公司正规的测试人员去测试,由于不是专业的测试,所以也就不班门弄斧了,就说下测试的几种详细分类吧。
测试分为如下几种:
- 测试是否知道源代码
- 黑盒测试: 不知道代码
- 白盒测试: 知道代码
- 按照测试的力度分:
- 方法测试
- 单元测试
- 集成测试
- 系统测试
- 按照测试的暴力程度
- 冒烟测试: 主要是测试硬件方面
- 压力测试:典型的就是12306网站
- 在线测试: 例如百度云测等等,其实这上面主要是使用的也还是monkey测试,只不过这个事情有人帮你已经做好了。你只需要把你的app上传上去,他们有团队会帮你把这个app安装到不同机型的手机上,然后执行monkey测试,最后将测试的结果生成一个报告发送给你。
- monkey 测试: adb shell 下的一个测试指令。这个我上面以及提到过了。有兴趣的小伙伴可以去试试。
AndroidStudio一些基本配置
刚开始从eclipse转到as上的小伙伴肯定会对androidstudio这个工具特别陌生吧,其实这个工具和eclipse一样,eclipse主要是宽泛,基本上90%以上的开发都可以做,而androidstudio主要是专精,主要是为了android开发而生的,况且现在大部分公司基本上都是使用as来进行开发,再者开发的人一定会对gayhub(github,我经常叫做同性俱乐部。嘿嘿)很熟悉,gayhub上的一些开源项目基本上都是as做的,eclipse的开源项目现在在as上已经很少了,更何况as是google工程师开发出来的,那我们有什么理由不去用它呢。今天我们来讲一讲as的一些常用配置。
1. 显示行号
androidstudio默认是不显示行号的,不知道为什么这个选项是默认关闭的,真是智障。对于开发者来说,显示代码的行号是很有必要的。
打开方法:
- File–>settings–>Editor–>General–>Appearance, 在这个里面可以看到有一个show line number选项,勾选即可看到行号
- 注意,在文件的编辑区域最左侧右键选中也可以显示行号,不过这个只是一个临时的设置,下次在启动的时候,行号依然不见,为了一劳永逸,还是配置一下比较好。
2. 命名前缀
- 在android的源码中,所有的成员变量都是用m开头的,所有的静态成员变量都是以s开头的,既然google工程师都是这么做的,我们有什么理由不去效仿呢?
打开方法:
File–>settings–>Editor–>Code Style–>java, 选择最右侧的Code Generation设置
3. 自动导包
- 用惯了eclipse的同志们,在写完代码的时候,肯定会习惯性的按下Ctrl + shift + o快捷键吧。 麻烦吗?现在你换了androidStudio了,就不用再去按快捷键导包了,它会自动帮你导入你需要的包。如果有多个包有这个类,它会告诉你你应该去选择导入哪一个包。有了as的自动导包,妈妈再也不用担心我按快捷键导包了。
- 打开方法
- File–>settings–>Editor–>General–> Auto Import
- 勾选如下图两个选项即可
4. 显示方法分割线
- 显示方法分割线主要是为了方便查看方法,这个设置看个人喜好吧,反正我是习惯把这个打开。
- 打开方法:
- File–>settings–>Editor–>General–>Appearance
- 勾选 show method separators
5. 更改日志显示颜色
- android中的日志输出信息颜色都比较怪,总是分辨不出错误的信息,当然,这么强大的编辑器,肯定是可以支持自定义日志输入颜色的。
- 设置方法:
- File–>settings–>Editor–>Color & Fonts–>Android Logca t
6. 代码模板
- 我相信有的小伙伴即使用了androidstudio,也会在调试的时候习惯性的使用System.out.println()这种代码来进行调试。(当然这种调试方式在java中还可以,在android中真的不推荐这样)在eclipse中,要输出这样的一句话只需要按下syso即可完成,在as中同样使用sout即可输出这样的一句话,其实这就是as给我们提供的一个活动模板而已。但是有没有小伙伴知道这个是怎么完成的呢?这就要说到我们的代码模板了。在很多场合我们都可以用到这样的模板的。比如说Handler,单例模式等等。。
- sout的活动模板我们可以在as的Settings中找到如下图所示。
- 设置方法:
- File–>settings–>Editor–>Code Style–>Live Templates
- 点击右边的“+”号我们就可以新建一个属于我们自己的模板了。这样你就再也不用担心写那些令人烦躁的handler模板和单例模式了。直接一键搞定。
常用的基础配置基本上就这些了,最后我提醒一下,当你配置好的你的as配置后,你最好把你的as设置导出来放在其他地方一份,防止以后你重装了as后,所有的设置你得重新配置,这样就得不偿失了。最后留一下我自己的as配置吧。反正基本上我都配置了。最好是自己亲自操作一下,多熟悉一下对自己掌握as有很大的帮助。