Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
开发一个既可以在web上运行又可以作为Android应用程序运行的Java应用程序?_Java_Android - Fatal编程技术网

开发一个既可以在web上运行又可以作为Android应用程序运行的Java应用程序?

开发一个既可以在web上运行又可以作为Android应用程序运行的Java应用程序?,java,android,Java,Android,我正在开发一款既可以在网络上作为小程序使用,也可以在Android手机上作为应用程序使用的游戏 这可能吗?如果可能的话,我需要知道什么才能让它起作用(例如,如果有任何设置我不应该硬编码,而是在游戏运行时根据用户的设备确定它们,或者我不应该使用任何java库?) 此外,游戏需要接受触摸屏作为Android应用程序的输入。这是可能的,以建立在同一个游戏,也将作为一个小程序运行?可能是这样,在运行时,小程序决定在运行时是使用鼠标还是触摸屏进行输入 尽管Android应用程序是用Java编写的,但应用程

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

这可能吗?如果可能的话,我需要知道什么才能让它起作用(例如,如果有任何设置我不应该硬编码,而是在游戏运行时根据用户的设备确定它们,或者我不应该使用任何java库?)


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

尽管Android应用程序是用Java编写的,但应用程序周围的框架与小程序周围的框架截然不同。你将不能有一个.jar文件,你可以把它作为一个小程序,扔向Android设备,因为这不是它的工作方式

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

为了解决游戏中不同的控件问题,你可能需要将输入抽象出来,让你的游戏/关卡对象像userHasPoked(int x,int y)一样进行回调,然后让applet在点击鼠标时调用该方法,android应用程序在触摸时调用它(奇怪的是仍然称为onClick)

我认为这将是一条漫长的道路,但要比重写整件事容易得多。这看起来可能需要做更多的前期工作,但一旦你将代码嵌入到applet和Android应用程序中,你就可能“永远”不必再接触这些代码,只需继续添加到游戏中


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

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


它可以与(cordova)一起安装到android设备上。

让我为您打断一下

模型
-业务逻辑和数据

视图
-模型输出的显示

控制器
-在其上执行操作

使用此
MVC
体系结构的优点是,您可以保持相同的模型,并且可以不断更改视图


因此,记住这一点,你可以在Web应用程序和Android应用程序中使用相同的模型,然后分别实现彼此的视图。

你的用户名让我强烈地想点击下一票按钮。感谢你没有屈服于这种邪恶的冲动。保持强壮,谢谢。因此,我必须编写的唯一新代码是实际的事件处理程序,而Android和Java的部署过程会略有不同?或者,我是否需要为web和android重新编写代码的其他部分?@ClickUpvote:“因此,我必须编写的唯一新代码是实际的事件处理程序”——不,新代码将是“整个UI”。“Android和Java的部署过程会稍有不同”——我将其描述为“本质上不同”或“不太一样”。我仍然感到震惊的是,在这个时代,甚至有人在运行小程序,更不用说编写它们了。@Commonware那么你认为在浏览器和Android中运行java游戏的更好方法是什么?@ClickUpvote:我质疑“在……浏览器中运行java游戏”的全部优点。据我所见,在Web浏览器中玩的游戏通常是用Flash或HTML/JavaScript实现的。浏览器中唯一比小程序更死气沉沉的是ActiveX控件(好吧,还有
标签)。@commonware我看不出有任何理由不让我的游戏也在web浏览器中运行,为什么我要把自己限制在安卓上。我的问题是,在浏览器中运行java是否有比小程序更好的方法,例如JavaFX或任何更新的技术?