上一篇文章中,我们重点讲解了adb的常用命令,下面我们一起来看看其它常用的命令
2 android
2.1 查看机器上所有已经安装的Android版本和AVD设备
2.1.1查看机器上已经安装的AVD(Android Virtual Device)设备
通过下面的命令我们可以查看机器上安装了的所有的AVD:
android list avd
终端执行结果:
从图中我们可以看到,在我的机器上总共建立了两个avd,其中一个是2.3.3版本的 ,另一个是4.0版本的
2.1.2 查看机器上所有已经安装的Android版本
通过下面这个命令,我们可以查看到机器上已经安装了的Android版本:
android list target
终端执行结果:
上图中显示的只是其中的 一部分。
2.2 AVD设备管理
2.2.1创建AVD设备
首先,通过上面的命令我们可以查询到我们机器上所安装又的android版本,接下来,我们就可以根据我们的需求以及已安装的版本进行avd设备的创建。具体命令格式如下:
android create avd -n <avd名称> -t <Android 版本> -b <CPU架构> -p <AVD 设备保存位置> -s <选择AVD皮肤>
举个例子:
android create avd -n test_avd -t 4
这样子我们就可以创建一个最简单的avd了,通过android list avd我们可以查看到这个avd:
2.2.2 升级AVD设备使之符合新的SDK环境
android update avd -n <AVD 名称>
举个例子:
android update avd -n test_avd
2.2.3 重命名AVD设备或者修改路径
android move avd Options: -p --path : Path to the AVD's new directory. -n --name : Name of the AVD to move or rename. [required] -r --rename : New name of the AVD.
2.2.4 删除AVD设备
android delete avd -n <AVD 名称>
2.3 Android项目管理
2.3.1创建一个新的Android项目
android create project <options> Options: -n --name : 项目名字<Project name>,当你去build该项目的时候,这个选项将会用来做你的apk的文件名<即是:name.apk> -t --target : 项目针对的Android版本,同时在编译的时候也会使用该Android版本.这个可以使用android list target查询到. [required] -p --path : 项目将要建立的路径. [required] -k --package : 项目应用的包名. [required] -a --activity: 默认的Activity的名字. [required]
举个例子,我要在当前路径下的xiaoxuetu文件夹中创建一个名字为xiaoxuetu,包名是com.xiaoxuetu,activity名字为MainActivity的项目:
android create project -n xiaoxuetu -t 4 -p ./xiaoxuetu -k com.xiaoxuetu -a MainActivity
终端的执行结果为:
从结果中,我们就可以看到,执行命令后他为我们生成了一系列的文件,关于一个项目的具体架构,我们后面讲到。
2.3.2 更新一个Android项目
所谓的更新是什么呢?意思就是可以为一个已经存在的Android项目,添加库,修该项目名字,设置项目的针对的Android版本,同时还可以更新他的子项目,如测试项目。
android update project <options> Options: -l --library : Directory of an Android library to add, relative to this project's directory. -p --path : The project's directory. [required] -n --name : Project name. -t --target : Target ID to set for the project. -s --subprojects: Also updates any projects in sub-folders, such as test projects.
我们先来给个简单的使用例子,后来再来介绍 -l 和 -s参数吧:
android update project -p ./xiaoxuetu -n xiaoxuetu -t 4
终端的执行结果:
2.3.3 创建库项目(lib project)
上面的属性 -l 其实指的就是库项目,而库项目(lib project)本身也是一个标准的android 项目。我们可以像之前那样创建一个库项目,也可以直接利用android工具本身自带的工具进行创建:
android create lib-project <options> Options: -n --name : Project name. -t --target : Target ID of the new project. [required] -k --package : Android package name for the library. [required] -p --path : The new project's directory. [required]
下面我们来举一个例子吧:
android create lib-project -n xiaoxuetu_lib -t 4 -k com.xiaoxuetu.lib -p ./xiaoxuetu_lib
终端的执行结果为:
看起来,他本身和标准的Android 项目没有什么区别,差别主要在于project.properties文件中多了这么一个属性:
android.library=true
如果你想吧其他已经存在的项目更改成库项目,只要在它的project.properties文件中加入上面那一句即可。
2.3.4 更新库项目
更新库项目,比如说更新库项目针对的Android版本:
android update lib-project <options> Options: -p --path : The project's directory. [required] -t --target : Target ID to set for the project.
具体使用方法,跟前面 2.3.2 更新一个Android项目 一样,在此不做过多的说明
2.3.5 库项目的引入
其实这个在前面 Android项目创建和更新 的时候已经讲解过,使用的就是 -l (或者--library)这个参数:
android update project --target <target_ID> --path path/to/your/project --library path/to/library_projectA
当引入成功后,我们就会发现在project.properties文件中多了这么一行:
android.library.reference.1=path/to/library_projectA
如果你引入的是多个库项目,那么将会使用.n来决定各个库项目的优先权:
android.library.reference.1=path/to/library_projectA android.library.reference.2=path/to/library_projectB android.library.reference.3=path/to/library_projectC
当然我们也可以给library_projectC较高的优先权:
android.library.reference.2=path/to/library_projectA android.library.reference.3=path/to/library_projectB android.library.reference.1=path/to/library_projectC
注意:.n一定是从1开始的
2.3.6 创建测试项目(test-project)
创建一个测试用的项目,可以用来测试安卓应用的Activity,Service等等,具体后面的博客会讲,在此不做详细的讲解,如果现在就想了解的话,可以先参考:http://developer.android.com/tools/testing/testing_android.html
android create test-project <options> Options: -p --path : The new project's directory. [required] -n --name : Project name. -m --main : Path to directory of the app under test, relative to the test project directory. [required]
下面主要讲解下-m这个参数,如果有这么一个项目/source/projectA,我们要建立一个测试项目/source/projectATest用于测试/source/projectA,那么,我们的m必须是../projectA,下面给出一个简单的例子,测试的是同一目录下之前创建的xiaoxuetu项目:
android create test-project -p ./xiaoxuetu_test -n xiaoxuetu_test -m ../xiaoxuetu
终端中的执行结果是:
2.3.7 更新测试项目(test-project)
更新该测试项目要测试的Android项目:
android update test-project <options> Options: -m --main : Directory of the app under test, relative to the test project directory. [required] -p --path : The project's directory. [required]
具体注意事项和执行结果跟前面的差不多,在此就不做多说明了。