[Android] 基于 Linux 命令行构建 Android 应用(二):命令行管理项目

创建 Android 项目

  在命令行创建 Android 项目需要用到 android 工具(该工具由 Android SDK 提供,位于 <sdk>/tools/ 目录下。)。它能自动生成一个项目目录,其中包含若干默认应用程序文件,存案文件,配置文件和一个构建文件。

  命令用法[1]

$ android create project \
--target <target_ID> \
--name <your_project_name> \
--path path/to/your/project \
--activity <your_activity_name> \
--package <your_package_namespace>

  ● target: 构建目标。即应用程序适用的 Android 平台库(包括 add-on,例如 Google API)。使用 $ android list targets 命令查看所有可用目标及其 ID。

  ● name: 项目名称(可选)。如果提供该选项,name 值将用作构建结果 .apk 文件名。

  ● path: 项目路径。如果不存在,则将被自动创建。

  ● activity: 默认 Activity 类名。对应的类文件创建在 <path_to_your_project>/src/<your_package_namespace_path>/ 目录下。如未提供 name 值,那么 activity 值将作为构建结果 .apk 文件名。

  ● package: 包命名空间,与 Java 编程中的包规则相同。

  项目新建完毕后,你就可以进行 Android 开发了。只要你愿意,你可以将项目目录移动到其他任何地方[2]。你也可以将 Android 项目选定为第三方库项目,但这样它只能提供给其他项目作为分享资源,而不能被安装到安卓设备上。

更新项目

  当你更换了一个新的开发环境,你可以使用 $ android update project 命令来更新你的项目使其适应新环境。你也可以使用该命令来更新项目的构建目标(--target)和项目名称(--name)。 android 工具会自动升级或创建更新所需的文件。

  命令用法:

$ android update project --name <project_name> --target <target_ID>
--path <path_to_your_project>

  ● target: 构建目标。

  ● path: 项目路径。

  ● name: 项目名称(可选,如果不想更新项目名称,可以忽略该选项。)

  例如:

$ android update project --name MyApp --target 2 --path ./MyAppProject

引用库文件

  如果要引用第三方库,你只要在项目的构建属性中添加第三方库索引即可。

  命令用法:

$ android update project \
--target <target_ID> \
--path path/to/your/project
--library path/to/library_projectA

  以上命令通过更新构建属性来包含第三方库。它做的事情其实是在 project.properties 文件中添加了一条 android.library.reference.n 属性。

android.library.reference.1=path/to/library_projectA

  如果你想添加多个第三方库,你可以按照它们之间相对优先级手动编辑 project.properties 文件,使用 .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 开始的连续自然数,如果中间出现断隔,之后的引用将都被忽略。

  在构建时,这些第三方库按照优先级从低到高逐个与应用程序合并。第三方库不能自己和别的库进行引用合并,在它们被合并到应用程序之前,它们彼此是隔离的。

  

注:

[1] 如不想每次都进入 Android SDK 目录来运行 android 命令,可以将 SDK 中的 platform-tools/ 和 tools/ 两个目录添加到环境变量 PATH 中。

[2] 尽量不要随意更改项目路径,因为这会破坏 local.properties 中的 SDK 路径属性。如果你更改了项目路径,请使用 $ android update project 命令来更新项目的 SDK 位置。

附:

1. [Android Developer] Managing Projects from the Command Line

时间: 2024-10-13 12:42:15

[Android] 基于 Linux 命令行构建 Android 应用(二):命令行管理项目的相关文章

[Android] 基于 Linux 命令行构建 Android 应用(七):自动化构建

本章将演示如何基于 Linux 命令行构建 Android 应用,在开始本章之前,希望你已经阅读之前几章内容. 本文环境为 RHEL Sandiego 32-bits,要基于 Linux CLI 构建 Android 应用,先决环境为: 1. JDK[1] 2. Android SDK 3. Apache Ant 安装过程需要使用 sudo 权限. 1. 搭建环境 1.1. 安装 JDK JDK 是构建 Android 应用先决条件之一,由于版权原因,一般安装 Open JDK. RHEL 中使

[Android] 基于 Linux 命令行构建 Android 应用(四):命令行构建

谷歌提供的 Android SDK 支持 Ant 自动构建[1],你可以使用调试和发行两种模式进行构建,两种模式不同之处在于调试模式 Ant 会调用内置的调试密钥,而发行模式调用你提供的私钥. 首先安装 Ant,并且将它添加到你的执行路径 PATH 里[2]. 调试模式构建 在调试模式下,Ant 会自动使用一个调试密钥对你的安卓应用进行签名,并且使用 zipalign 进行优化. 要进行调试模式下的构建,首先在命令行进入安卓项目根目录,然后使用 Ant 启动调试模式构建: $ ant debug

[Android] 基于 Linux 命令行构建 Android 应用(五):Ant 构建命令

Android SDK 提供的 android 工具可以在项目根目录自动生成 Ant 构建文件 build.xml[1].进入项目根目录后,你可以使用以下 Ant 命令[2]. ant clean 清理项目.该命令负责清理本文列出的其他 Ant 命令产生的输出结果. ant debug 构建调试包. ant emma debug 以开启 instrumentation 的方式构建测试项目,可用于代码覆盖的测试. ant release 构建发行包. ant instrument 构建支持 ins

[Android] 基于 Linux 命令行构建 Android 应用(一):关于 Android 项目

关于 Android 项目 项目是保存源代码和资源文件的容器. 谷歌提供的 Android SDK 工具只能对具有固定目录结构的项目进行编译和打包.因此强烈建议使用 Eclipse + ADT 或者 android 命令创建 Android 项目. 你可以使用 Eclipse + ADT 创建三种项目,它们主要结构相同但功用不同,分别是 Android Projects.Test Projects 和 Library Projects.本文我们主要关注 Android Projects. 一个

android安装Linux,玩转Android

前一两天,看着三星更新了Android6.0的名单,但自己的手机是小米3,也想试试Android原生,就去刷了Android6.0适应小米版,来自大神@秋叶随风ivan的更改版.用了几天,发现Android6.0不太完善,想自己更改完善系统,奈何能力不够.就把手机刷回了MIUI7.然后看到小米可以刷Linux就准备去试试.(其实手机上玩没啥用,平板还可以试试!~~,但还是挺好玩的) 首先我们要知道,这个是在Android上运行的,理论上是Android手机都可以刷,其次我们不用担心,原来的And

[Android] 基于 Linux 命令行构建 Android 应用(三):构建流程

Android 应用的构建过程就是将 Android 项目中的文件和资源进行编译和打包,最后将结果输出到 .apk 文件..apk 文件是保存二进制文件的容器,它包含了运行安卓应用所需的所有信息,例如编译后的 .dex 文件(.class 对应的 Dalvik 字节码),一个二进制的 AndroidManifest.xml 文件,编译后的资源(resources.arsc)和未编译资源. 如果你使用 Eclipse 进行开发,ADT 插件能持续构建你的项目,并将 .apk 文件自动输出到项目的

Android基于mAppWidget实现手绘地图(二)--概要

尊重原创,参考自:http://www.67tgb.com/ http://lemberg.github.io/mappwidget/user_guide.html 最近在看一些导游类应用,发现一些景区的导览图使用的完全是自定义地图,也就是手绘地图.这种小范围使用的,专业的地图给人以亲切的感觉.但是他们是如何实现的呢,网上找了找实现思路,都没有太满意的. 在一家英国的网站上,发现了一个类库,可以实现类似的功能.试了一下它提供的demo,发现功能强大的超过了我的预期.在这里分享给大家,希望给大家提

基于linux操作系统Mysql的基本操作(二)

下面开始动手创建一个库,步骤如下: 先创建一个库,命令: #create database wu: 查看新建的库,命令: #show databases: 使用wu这个数据库,在里面创建表,表名是test,命令: #use wu: # create table test (id int(3),name char (10)); 创建表的格式:Create table 表名字(表栏名1  数据类型,表栏名2  数据类型....) 查看下test表,命令: #show create table tes

Android和Linux应用综合对比分析

公开发布的序言: 这篇文章是作于2012年7月12日,也就是自己刚从大学校园迈向工作岗位的时候遇到的第一个题目"请你针对我们公司目前的应用行业场景做一下调研:在终端做应用程序开发的平台是选择Linux好还是Android好"而写的. 在踏出校园之前,自己从来没有接触过安卓的开发领域(除了在2010年下半年买了一部分安卓的智能手机外).接到这个题目后,自己也没有退缩,硬着头皮接下来了,然后凭借自己在学校时候学的一点检索信息写学术论文的小功底,三天之内写下了这篇长达1万4千多字的调研报告,