Rails 3.2和phonegap

我目前正在运行一个rails应用程序,我想为它制作一个移动应用程序,我不想学习objective-c或java,我读过很多关于phonegap的文章以及我如何使用它来制作跨平台的web应用程序Phonegap编译css / htm / js Rails应用程序有它的ruby代码以及html.erb和js.erb扩展所以如何制作一个移动应用程序,主要用于android作为我的rails切换服务器的后端ex
我将使用jquery mobile作为应用程序的UI我是否需要制作api并使用emberjs或angularjs或骨干与服务器联系? 使用rails作为移动应用程序后端的教程非常少见

显然,没有一种方法可以做到这一点。 所以,我将告诉你我必须使用API服务器应用程序构建移动客户端时使用的工具。

后端:

  1. Ruby on Rails
  2. rabl gem (Ruby API Builder Language)是一个Rails和Padrino ruby​​模板系统,用于生成JSON,XML,MessagePack,PList和BSON。 有了这个gem你可以:
    • 创建基于组合对象中的数据命名的任意节点
    • 将参数传递给方法并将结果存储为子节点
    • 渲染部分模板并inheritance以减少代码重复
    • 重命名或别名属性以更改模型中的名称
    • 将子项中的属性附加到父节点
    • 仅在满足特定条件时才包括节点

前端:

  1. Cordova :一组设备API,允许移动应用程序开发人员从JavaScript访问本机设备function,如摄像头或加速度计。
  2. Angularjs (可选)
  3. Ionic (如果您选择使用Angular):免费和开源,移动优化的HTML,CSS和JS组件库。 使用Sass构建并针对AngularJS进行了优化。 Ionic附带了一个AngularJS和Cordova Seed Project示例,您可以使用它来启动您赢得的应用程序。
  4. angular-restmod (如果你选择使用Angular):Rails启发了REST-API ORM。 有了这个,您可以使用“javascript模型”与Rails API进行交互。 如果你不想使用它,你可以使用Angular的$ http

使用Ember,您可以使用ember_phonegap_starter 。 这是一个入门套件,可帮助您在移动应用程序中启动和运行Ember。 这可以转储到PhoneGap包装器中,为您的Ember应用程序创建一个App包装器。 (看看截屏video )

您可以使用bootstrap-for-ember ( 示例 )将Twitter Bootstrap 3添加到您的Ember应用程序。

这可能不是解决方案,而是试图如果我使用这些技术我会怎么做。 我可以看到你关闭的方法是使用RubyonRails作为后端服务器来获取REST API。 看看这里和那里看看它是如何实现的。 所以实质上RuybOnRails服务器将执行获取REST API服务。

然后,在PhoneGap中,您可以使用Backbone.js, 在此处查看更多信息,以执行您的GET / POST / CRUD请求。 希望这可以帮助。

您不需要创建API。 我有类似的情况,只使用Rails,Cordova / PhoneGap,Bootstrap和一些Cordova插件。

我遇到了两个主要的问题:如何将正确的资产加载到应用程序的页面中,以及如何通过同一设备上的“浏览器”访问来告知应用程序访问权限。

我的应用程序要求我有一组与iOS和Android略有不同的插件。 所以我需要一种方法来捆绑每个的正确集合。 我在app / assets / javascripts目录中使用了多个清单文件来处理它。

我还修改了来自Cordova应用程序的用户代理字符串。 默认情况下,您无法从Cordova应用程序GET中真正告诉“浏览器”GET。