我使用Spring MVC和MySQL在Openshift上创建了一个Web应用程序。
现在我想为这个应用程序移动。我想将相同的应用程序发布为移动应用程序(主要是Android)。首先,这个移动版本也应该使用HttpPost / Webservice安全授权。
我知道Pivotal有一个Spring Mobile项目,它可以为同一个应用程序创建一个移动网站(比如spring form标签和所有应用程序更加复杂)。
另一方面,Phonegap可以借助HTML5和CSS创建一个跨平台的移动应用程序。
我的问题是:
一些利弊或任何参考链接都会有所帮助。
答案 0 :(得分:12)
首先,让我给你一个警告。虽然这是一个建设性的问题(比这里提到的平均问题更好),但人们通常喜欢那些花费一些时间自己寻找答案的用户的问题。我稍后会解释这一部分。
Phonegap(Cordova)和 Spring Mobile 是两个完全不同的框架,它们服务于完全不同的目的。你可能已经发现谷歌搜索。
Phonegap(Cordova)是一个用于混合移动应用创建的包装框架。您的HTML / CSS / JavaScript代码已封装到本机shell中,您可以使用JavaScript< - >用于访问本机电话功能的本机桥接代码。虽然您可以像使用vanilla JavaScript一样使用它,但它通常与其他移动框架一起使用,如jQuery Mobile,Sencha Touch或Kendo UI。
Spring Mobile 是Spring MVC的扩展,旨在简化移动Web应用程序的开发。 Spring Mobile是一个框架,它提供检测向Spring网站发出请求的设备类型的功能,并根据该设备提供备用视图。
一切都取决于你要做什么。混合移动应用程序通常使用单独的客户端和服务器端代码完成。使用AJAX完成通信。因此,我会跳过Spring Mobile并仅使用Spring作为 RESTful Web服务框架。我个人更喜欢 Play框架,但那只是我。
当然,您仍然需要选择客户端JavaScript框架,或者您可以从头开始创建所有内容。我建议你使用像jQuery Mobile这样的预构建框架。
如果你真的想使用Spring Mobile,它仍然可以完成。 Phonegap可用于将远程网站包装到移动应用程序中。这种方法有几个缺点。如果您的网站关闭并且您将无法创建iOS应用程序,那么该应用程序将毫无用处,因为这些类型的应用程序一见钟情就被拒绝了。
答案 1 :(得分:0)
http://projects.spring.io/spring-android/
Spring for Android是一个框架,旨在提供用于Android应用程序的Spring系列项目的组件。像所有Spring项目一样,Spring for Android的真正强大之处在于它可以轻松扩展。