我有许多 Drupal 7 网站 (http://drupal.org),它们有一个带有 JQuery mobile (http://jquerymobile.com/) 的移动主题,供用户使用智能手机或平板电脑浏览。尽管这提供了出色的移动体验,但我想为 Android 和 Iphone 创建一个应用程序,该应用程序使用一些内置功能来创建内容(主要是节点创建上的相机)。我已经安装了 eclipse 和 android 模拟器,并且安装了用于 Android 测试的 Phonegap。在这里,我需要一些关于解决我的特定问题的最佳方法的建议。基本上每个应用程序几乎可以完全只是一个 web 视图(简单),但我确实需要 2 个功能来增加足够的独特性,使其能够在 MAC 应用程序商店中获得批准。
- 使用 REST 服务(以及 phonegap)添加节点的能力可以访问使用手机的摄像头来填充图像字段。
- 起始页或首页具有快速登录,并允许即时访问以添加内容(所有资产都存储在手机本地,因此即使手机离线,此页面仍会出现)。
- 能够从常规移动站点 (webview) 返回到本地节点创建页面(可以访问摄像头)或正面。
- 能够将某些内容传递给 webview,这样我就可以隐藏访问节点创建表单的 web 版本的内容创建链接(例如,它没有摄像头)。
这是我感到困惑的地方。我不想重新创建整个站点并使用服务检索所有数据(我见过的很多教程和东西都在这样做,包括 DrupalGap - http://drupal.org/project/drupalgap)。这似乎是大量冗余工作,当站点升级和更改时需要大量持续更新,除了速度之外没有任何实际收益(为此,它不会那么快)。
对于我的移动应用程序,当用户想要查看他们的个人资料、查看各种页面等时,这些都应该发生在 web 视图中,我只需要服务和用于首页、身份验证和节点创建的移动开发的典型方法。其余的应该发生在 webview 中。那么在添加节点和使用服务进行身份验证之间切换的最佳方式是什么?我是否应该尝试在页面中嵌入 web 视图并在顶部有一个小菜单,该菜单不会更改指向添加内容和登录的链接?
如何为 webview 内容和服务设置会话?或者我如何通过 REST 强制身份验证,然后将其传递给 webview?您不必直接回答每一个问题,我只是想要一些提示,让我朝着正确的方向开始。到目前为止,我想我为应用程序创建了一个“首页”,它的所有资产都存储在手机本地,它有一个通过 Web 服务 (REST) 进行身份验证的登录。登录后,它会显示添加节点的链接和查看 web 视图的链接。最大的问题是我如何为两者使用相同的会话以及如何在两个井之间导航?