2012-01-11 42 views
2

首先,我對此問題的含糊之處表示歉意,但這是我希望您能爲我澄清的問題。使用javascript和PHP開發原生android應用程序

的概念是,我會用Java編寫的應用程序的預定義模板,該模板將包括類如:

public class Image { 

    private int _x; 
    private int _y; 

    Image() { 
     _x = 0; 
     _y = 0; 
    } 

    Image(Int x, Int y) { 
     _x = x; 
     _y = y; 
    } 
} 

下一位我知道如何做到這是使用JavaScript來發布數據到PHP,但我希望PHP使用這些數據來構建Java應用程序。例如。我可能有一個PHP函數createImage($x = 0, $y = 0),這將隨後添加到Java源(PHP將不得不通過可變names.etc):

Image image342 = new Image(x, y); 

我稍後將要編譯成一個apk文件Android應用程序。

我有麻煩工作如何讓PHP修改和添加到Java源代碼,我知道我可以用繩子做到這一點,並寫入到一個物理文件.eg

public function createImage ($x = 0, $y = 0) { 
    $this->$num++; 
    $string = "Image image{$this->$num} = new Image({$x}, {$y});"; 
    $handle = fopen("/java/source/file", "ab"); 
    fwrite($handle, $string); 
    fclose($handle); 
} 

但是,這感覺有點凌亂,我想知道是否有更好的方法來實現我的任務。

感謝

回答

0

考慮到整個Android構建鏈(例如,編譯器,dx字節碼的交叉編譯器)需要的文件,你別無選擇,只能創建文件。基於模板創建項目的定製文件是一種相當典型的代碼生成形式。例如,當您從Eclipse嚮導創建一個新的Android項目時,這幾乎就是它的功能。

該代碼生成的一部分將是爲Android項目創建一個Ant構建腳本(基於您從android create project命令中獲得的腳本)。然後,您的服務器可以編碼然後項目和分叉進程來運行Ant給你的APK。

無論PHP是否是您的代碼生成問題的正確解決方案,還是使用其他已經完成模板驅動的目錄文件價值的生成,我都不能說。