4

我正在开发一款游戏,它既可以作为小程序在网络上运行,也可以作为应用程序在 Android 手机上运行。

是否可以这样做,如果可以,我需要注意什么才能使其正常工作(即,如果有任何设置我不应该硬编码,而是在游戏运行时根据用户的设备确定它们,或任何我不应该使用的 java 库?)。

此外,游戏需要接受触摸屏作为 Android 应用程序的输入。是否可以构建到同样作为小程序运行的同一个游戏中?可能是在运行时,小程序在运行时决定是使用鼠标还是触摸屏进行输入?

4

3 回答 3

5

尽管 Android 应用程序是用 Java 编写的,但围绕应用程序的框架与围绕小程序的框架非常不同。您将无法拥有一个 .jar 文件,您可以将其作为小程序包含在 Android 设备上,因为这不是它的工作方式。

然而,您可能能够创建所有游戏逻辑和对象,并将它们与小程序代码和 Android 应用程序共享。您甚至可以将它们放在一个存储库和项目中(尽管它可能必须是一个 Android 项目,然后您将其嵌入您的应用程序构建脚本中)。

为了处理游戏的不同控件,您可能必须抽象出输入,并让您的游戏/关卡对象有一个像 userHasPoked(int x, int y) 这样的回调,然后让小程序调用该方法单击鼠标,Android 应用程序在触摸时调用它(奇怪的是仍然称为 onClick)。

我认为这将是一条漫长的道路,但比重写整个事情要容易得多。前面可能看起来还有很多工作要做,但是一旦你完成了将代码嵌入到小程序和 Android 应用程序中,你可能“永远”不必再次接触该代码并且可以继续添加到游戏中.

我不会低估这项任务,但这听起来像是一个非常有趣的编程练习。祝你好运!

于 2012-08-24T22:13:08.140 回答
2

你开发什么样的游戏?这可能是开发 Javascript 游戏的更好方法。

可以使用phonegap (cordova) 将其安装到 android 设备上。

于 2012-08-24T22:19:59.103 回答
1

让我为你打破这个......

Model- 业务逻辑和数据

View- 模型输出的显示

Controller- 执行操作的位置。

使用这种MVC架构的优点是,您可以保持相同的模型不断更改 Views

所以记住这个想法,你可以为 Web App 和 Android App 拥有相同的模型,然后分别实现彼此的 Views 到它。

于 2012-08-25T09:35:50.890 回答