首先,我为这个问题的模糊性道歉,但我希望你能帮我澄清。
这个概念是,我将为一个应用程序用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必须传递变量名等):
Image image342 = new Image(x, y);
稍后我将要编译为.apk安卓应用程序。
我很难弄清楚如何让PHP修改并添加到Java源代码中,我意识到我可以用字符串和写入物理文件来完成这项工作。例如
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);
}
但这感觉有点混乱,我想知道是否有更好的方法来完成我的任务。
感谢
考虑到整个Android构建链(例如编译器、dx
字节码交叉编译器)都需要文件,您别无选择,只能创建文件。基于模板创建项目的自定义文件是一种相当典型的代码生成形式。例如,当您从Eclipse向导创建一个新的Android项目时,它几乎就是这样做的。
代码生成的一部分是为Android项目创建一个Ant构建脚本(基于从android create project
命令中获得的脚本)。然后,您的服务器可以对gen进行编码,然后进行项目并派生一个进程来运行Ant,从而为您提供APK。
PHP是否是解决代码生成问题的正确解决方案,而不是使用其他已经进行模板驱动的目录文件生成的方法,我不能说。