[Android] 基於 Linux 命令行構建 Android 應用(二):命令行管理項目

建立 Android 項目

 

  在命令行建立 Android 項目須要用到 android 工具(該工具由 Android SDK 提供,位於 <sdk>/tools/ 目錄下。)。它能自動生成一個項目目錄,其中包含若干默認應用程序文件,存案文件,配置文件和一個構建文件。html

 

  命令用法[1]android

$ 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: 項目路徑。若是不存在,則將被自動建立。spa

  ● activity: 默認 Activity 類名。對應的類文件建立在 <path_to_your_project>/src/<your_package_namespace_path>/ 目錄下。如未提供 name 值,那麼 activity 值將做爲構建結果 .apk 文件名。命令行

  ● package: 包命名空間,與 Java 編程中的包規則相同。code

 

  項目新建完畢後,你就能夠進行 Android 開發了。只要你願意,你能夠將項目目錄移動到其餘任何地方[2]。你也能夠將 Android 項目選定爲第三方庫項目,但這樣它只能提供給其餘項目做爲分享資源,而不能被安裝到安卓設備上。orm

 

更新項目

 

  當你更換了一個新的開發環境,你可使用 $ android update project 命令來更新你的項目使其適應新環境。你也可使用該命令來更新項目的構建目標(--target)和項目名稱(--name)。 android 工具會自動升級或建立更新所需的文件。htm

 

  命令用法:blog

$ 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

相關文章
相關標籤/搜索