簡體   English   中英

開發一個既可以在網絡上運行又可以作為Android應用程序運行的Java應用程序?

[英]Developing a Java app that runs both on the web and as an Android app?

我正在開發一款既可以在網絡上運行,也可以在applet上運行的游戲,也可以在Android手機上作為應用程序運行。

這樣做是否可行,如果是這樣,我需要注意什么才能使其工作(即,如果有任何設置我不應該硬編碼,而是在游戲運行時根據用戶的設備確定它們,或者我不應該使用的任何java庫?)。

此外,游戲需要接受觸摸屏作為Android應用程序的輸入。 是否有可能構建到同樣的游戲中,它也將作為applet運行? 在運行時可能是這樣,applet在運行時決定是否使用鼠標或觸摸屏作為輸入?

雖然Android應用程序是用Java編寫的,但圍繞應用程序的框架與圍繞applet的框架截然不同。 您將無法擁有一個可以作為applet包含的.jar文件並拋出Android設備,因為這不是它的工作方式。

但是,您可能會創建所有游戲邏輯和對象,並將它們與applet代碼和Android應用程序共享。 您甚至可以將它們放在一個存儲庫和項目中(盡管它可能必須是一個Android項目,然后您可以將其嵌入到您的應用程序構建腳本中)。

為了解決游戲的不同控制,你可能需要抽象輸入,並讓你的游戲/關卡對象像userHasPoked(int x,int y)一樣回調,然后讓applet調用該方法點擊鼠標,Android應用程序在觸摸時調用它(奇怪的是仍稱為onClick)。

我認為這將是漫長的道路,但比重寫整個事情要容易得多。 它可能看起來像前面的工作量更多,但是一旦你完成了將代碼整理到applet和Android應用程序中,你可能“永遠”不得不再次觸摸該代碼並且可以繼續添加到游戲中。

我不會低估這個任務,但這聽起來像是一個非常有趣的編程練習。 祝好運!

你開發了什么樣的游戲? 這可能是開發Javascript游戲的更好方法。

這可以與phonegap (cordova)一起安裝到Android設備上。

讓我為你打破這個......

Model - 業務邏輯和數據

View - 模型輸出的顯示

Controller - 執行操作的操作。

使用此MVC架構的優點是,您可以保持相同的模型不斷更改視圖

因此,記住這個想法,您可以為Web App和Android App提供相同的模型,然后分別實現彼此的視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM