在Android和“其他平台”之间生成应用程序便携式的推荐方法
我正在为Android开发一个应用程序,我认为它的功能可能在其他(运行Java的)平台上有用(比如一个普通的桌面应用程序 - 尽管我希望所涉及的其他平台对手头的问题无关紧要)。
UI不太可能以任何方式可移植(良好的触摸功能,4英寸屏幕UI和鼠标和键盘19英寸屏幕UI之间有太大的区别),所以我很高兴单独重新实现它。
但是,从理论上讲,核心的“业务逻辑”(呃,可怕的单词)和模型(数据存储)类可以在管理核心应用程序中重用。我注意到,我正在编写的类中没有很多最终不会引用一些特定于Android的位(我有XML资源文件,图像和SQLite数据库作为示例)。基本上,到目前为止,我写的所有东西都至少有一个与Android相关的导入。
我的问题是双重的:
- 有哪些工具可以帮助我在非Android平台上使用与Android相关的类和功能(例如资源,数据库);和
- 由于不可移植性,我应该完全避免使用Android平台的哪些类,功能等(为了简单起见,让我们排除与UI相关的项目),以及我应该使用什么来提高可移植性。
由“哈哈哈哈,你注定要失败”组成的答案是可以的,只要提供一些理由。
(附言如果它仍然可用,我会制作这个社区wiki;这对我来说似乎是一个完美的CW问题 - Android可移植性提示和工具的列表)