为现有的Spring MVC应用程序设计移动应用程序(Spring Mobile或Phonegap)

时间:2014-05-17 16:48:27

标签: android spring jquery-mobile cordova spring-mobile

我使用Spring MVC和MySQL在Openshift上创建了一个Web应用程序。

现在我想为这个应用程序移动。我想将相同的应用程序发布为移动应用程序(主要是Android)。首先,这个移动版本也应该使用HttpPost / Webservice安全授权。

我知道Pivotal有一个Spring Mobile项目,它可以为同一个应用程序创建一个移动网站(比如spring form标签和所有应用程序更加复杂)。

另一方面,Phonegap可以借助HTML5和CSS创建一个跨平台的移动应用程序。

我的问题是:

  • 将我的精力放在Phonegap或Spring Mobile上是否值得?
  • 如果我选择Spring Mobile,如何在Android Play商店中发布移动应用程序?

一些利弊或任何参考链接都会有所帮助。

2 个答案:

答案 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

如果你真的想使用Spring Mobile,它仍然可以完成。 Phonegap可用于将远程网站包装到移动应用程序中。这种方法有几个缺点。如果您的网站关闭并且您将无法创建iOS应用程序,那么该应用程序将毫无用处,因为这些类型的应用程序一见钟情就被拒绝了。

最佳行动方案

  • 单独的客户端和服务器端代码
  • 选择a client side mobile JavaScript framework
  • Spring 用作 RESTful 网络服务,或任何其他 RESTful 框架,例如Play。
  • 将客户端代码包装到 Phonegap(Cordova)
  • 发布为Android,iPhone应用程序

链接

  1. 如何 create jQuery Mobile application with Phonegap |的 Mac version
  2. Sencha Touch vs jQuery Mobile
  3. Secrets of a good jQuery Mobile page architecture
  4. 如果您已经有使用jQuery的经验, learn the differences between jQuery and jQuery Mobile

答案 1 :(得分:0)

http://projects.spring.io/spring-android/

Spring for Android是一个框架,旨在提供用于Android应用程序的Spring系列项目的组件。像所有Spring项目一样,Spring for Android的真正强大之处在于它可以轻松扩展。