我目前正处于论文项目的研究阶段。
我的项目是一个针对移动设备的订票系统,我选择以 Android 为目标。
我预计需要带有中央服务器的客户端/服务器架构,因此目前正在研究 Android 如何与这样的服务器进行通信。服务器将授予客户端访问票务信息的权限,并且客户端将有关票务预订的信息发送到服务器。我正在寻找用于服务器的 Java EE,因为 Java 是我最有经验的语言。
我知道 Android 附带java.nio
and java.net
,以及一些org.apache
包,但我也在寻找可以与 Android 一起使用的库/技术。
到目前为止,我还没有在互联网上找到任何有很大帮助的内容,所以我正在看看 SO 可以提出什么建议。
具体来说,我有兴趣了解:
- What support is there for various middleware technologies in Android? e.g.
- 基于RPC的中间件
- CORBA
- 基于消息的中间件
- Web 服务,例如 XML-RPC、SOAP、REST
- 现有 Java 库在 Android 平台上使用时效果如何? (例如,如果我想使用为 Java SE 而不是 Android 设计的库/API,我可能会遇到什么问题?)
理想情况下,由于我的项目的重点不是服务器和客户端之间的通信,因此我可以使用现有的中间件来处理通信,但我为最坏的情况做好了准备,即必须编写自己的中间件。
各种支持有哪些
Android 中的中间件技术?
我个人的观点是,只有专门设计用于在互联网上运行的协议才适合远程与移动客户端一起使用,尽管我并不认为我是唯一一个这么想的人。所以,在你的清单中,我唯一愿意接受的就是:
Web 服务,例如 XML-RPC、SOAP、REST
有些人一直在维护 kSOAP2 的 Android 端口。然而,我的明显印象是,大多数从事该领域工作的 Android 开发人员都倾向于 REST 和 REST-ish 协议。如果没有别的,这就是所有有趣的网站和服务都使用的 API,特别是与 XML-RPC(旧的)和 SOAP(旧的且令人讨厌的)相比。
我已经成功地使用了java.net.URLConnection
Android 中的 Apache HTTPClient 库用于与 REST 样式端点进行通信(直接或通过第三方 JAR),没有真正的 Android 特定问题。
现有的 Java 做得如何(或不佳)
库在使用时可以工作
安卓平台?
很难抽象地回答这个问题。 Android 实现了 JavaSE 的大部分子集,但不是 JavaSE 的全部,因此任何给定的 JAR 都有可能期望 Android 不提供的东西。同样,Android 不使用环境变量、命令行开关或专注于桌面的开发人员可能作为半要求引入的各种其他内容。所以,有些东西只需要重新编译就对我有用(Beanshell),有些东西在删除多余的类后对我有用(JTwitter),有些东西看起来很难工作(JavaMail) 。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)