Iphone 应用程序与离线网络应用程序。哪种方式最聪明?

标签 iphone offline google-gears

我考虑从头开始构建一个满足两个技术要求的小型应用程序:

  • 应该可以在 iPhone 上使用
  • 应该离线工作

这里有两个明显的替代方案可供选择

  • 具有离线功能的真正 iPhone 应用程序
  • 使用 HTML5 离线、Google Gears 或类似工具的网络应用

没有 iPhone 应用程序开发经验(我没有 iPhone),我想知道哪条路最容易走?

构建离线 HTML 与构建 iPhone 应用程序的学习曲线是怎样的?

最佳答案

老实说,这取决于您的应用要做什么。

MobileSafari 支持所有 HTML5 离线内容,因此您可以将数据存储在客户端 SQL 数据库中、缓存应用程序客户端等...移动 Gmail 应用程序可能是其中最著名的示例,它为您提供全功能访问即使在离线状态下也可以访问您的 Gmail。您还可以通过 3.0 中添加的 JavaScript API 使用地理定位。 Web Clip 还可以让您的 Web 应用程序与 native 应用程序共享主屏幕。有关在 iPhone 上使用网络应用程序的更多信息,请访问 this Stack Overflow post .

显然,喜欢处理 HTML、CSS 和 JavaScript(可能还有任何在服务器端运行的语言)的人会对开发 Web 应用程序感兴趣。使用离线 Web 应用程序可以做一些非常巧妙的事情,但其性能不会像 native 应用程序那么好,尤其是在 3GS 之前的设备上。

开发 native 应用程序需要您学习 Objective-C(或在 Mono Touch 面向大众推出后立即学习 C#),并支付 99 美元的费用才能在设备上进行测试并部署到 App Store。系统的更多功能通过各种 API 向您展示,例如相机、指南针、多点触控等。

如果您熟悉 Java,那么 Objective-C 很容易上手;您只需要习惯方括号语法和内存管理,然后就非常简单了。

然后是混合系统,例如 PhoneGap ,只要 Web 应用程序在特殊的容器应用程序中运行,它就会公开更多设备的 API。它也是跨平台的,因此如果您愿意,您也可以在 Android 和 BlackBerry 上部署该应用程序。这仍然需要您支付 App Store 费用,但如果您更熟悉 Web 开发,这可以让您两全其美。

关于Iphone 应用程序与离线网络应用程序。哪种方式最聪明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1416111/

相关文章:

iphone - 如何截取 Storyboard 项目流程的屏幕截图?

ios - 弹出到 Root View Controller 问题

javascript - 服务人员什么时候应该自毁?

iphone - 如何在 iOS 上使用 AVMutableComposition 和 CALayers 将多个 CALayer 添加到视频文件

iphone - 如何从 NSObject 类中调用添加 View

maven - 如何离线创建android studio项目?

java - 如何配置 Maven 以进行离线开发?

google-chrome - 我可以从 Chrome 扩展访问 Gears 吗?

HTML 5 引用实现

Javascript session 数据存储