2013-03-08 106 views
20

我有興趣按需製作Android應用。根據客戶的要求,我的網站會向我發送一個JSON文件,直接導入我在Delphi中創建的Windows應用程序。這個會將文件保存在Android應用程序源文件夾中,然後執行命令行,告訴Android編譯器生成APK文件並將其發送給我的客戶端,所有這些都沒有我的存在。如何從命令行編譯APK?

Android項目是由MotoDev製作的。它使用我的根目錄下的Android SDK。

我應該如何配置命令行才能在Delphi程序中實現此目的?

我還需要更改清單以放置新的版本號,以免與其他客戶端版本發生衝突。

回答

31

Android使用Ant構建系統,因此您可以爲您的項目創建build.xmlbuild.properties文件。

你需要創建build.xml文件第一,但:

android update project -p . 

這將產生一個build.xml文件。您應該爲您的項目定製構建步驟和目標。在你的情況下,一個好主意就是讓你的網站生成build.properties文件以用於特定的構建...然後通過build.xml文件包含它。特別是,你將需要在build.properties文件,其中的簽名密鑰是指定的,什麼密碼是:

Build.Properties:

key.store=keystore.dat 
key.alias=signing_key 
key.store.password=password123 
key.alias.password=password123 

使用ant構建過程也可以讓你在Java文件中做可變替換,這可能是另一個想法。它將允許您按客戶端進一步定製構建過程。

ant clean 
ant release 

另一個不錯的主意:通過將< copy ... />線在< target name="release" >節還有螞蟻複製生成的APK文件,以通過該網站可訪問的網絡共享

默認情況下,構建由觸發。

+0

所以,這build.properties也是一個xml文件?你會向我展示這兩個文件的完整示例嗎? – PSyLoCKe 2013-03-08 12:07:50

+0

如何在PHP服務器上做同樣的事情? @Andrew – 2014-08-07 10:53:02

+2

我沒有在我現有的項目目錄中看到任何build.xml文件...你說'你需要創建build.xml文件'但是爲什麼如果我已經編譯過了通過,說... Eclipse/ADT? – Michael 2015-06-30 16:35:57

5

創建在創建項目時

的build.xml如果你啓動一個新項目:

android create project \ 
    --target 1 \ 
    --name MyName \ 
    --path . \ 
    --activity MyActivity \ 
    --package com.yourdomain.yourproject 

build.xml文件由ant使用將會產生。

android工具存在於您下載的SDK的tools/目錄中。

創建調試版本

除了:

ant release 

最終版本中,您還可以創建與調試版本:

ant debug 

位置的生成APK

生成的apk放在bin/下。

最重要的輸出是:

MyName-debug.apk 
MyName-release.apk 

但一些中間的apk還生成,特別是未對齊的和無符號版本。

但大部分在其中創建它們,只是運行,你可以忘記時間:

ant debug install 
ant release install 

,讓他們安裝。但要確保它正在與亞洲開發銀行第一:adb devices command not working

測試在Ubuntu 15.10,Android的23