在基于Phonegap的混合iPhone / iPad应用程序中使用“核心数据”进行存储是否有意义?我们的应用程序主要在UIWebView中运行,但数据存储组件将成为应用程序工作的核心。我知道Mobile Safari具有可通过PhoneGap使用的离线存储功能,但我们已经拥有一个基于Core Data的内部数据存储解决方案,我们希望利用它。
由于 卡皮尔
答案 0 :(得分:3)
您可以创建一个PhoneGap插件,它是PhoneGap API的自定义扩展。它包含一些本机代码,它可以执行一些特定于本机的功能,以及一个JavaScript接口,然后向您(PhoneGap开发人员)公开此功能。根据定义,插件是特定于平台的!
在您的情况下,您将创建一个插件,将Core Data API公开给PhoneGap浏览器实例。据推测,由于您已经编写了大量基于Core Data的代码,因此大部分工作已经完成。您只需编写围绕它的JavaScript包装器并形成您的本机代码,以使其适合插件模式。
一个好的起点是杰西关于他们的博客文章;请注意,这些是专门针对iPhone的:
http://blogs.nitobi.com/jesse/2010/04/01/iphonegap-plugs/
以下是现有PhoneGap插件的一些示例,如何使用它们以及源代码中的链接以了解它们的构建方式:
https://github.com/phonegap/phonegap-plugins
http://blogs.nitobi.com/shazron/2010/07/12/phonegap-iads-plugin/
http://blog.urbanairship.com/blog/2010/06/09/phonegap-push/
这是StackOverflower和回答者之一,Aaron:)
http://blog.clearlyinnovative.com/post/1097750723/phonegap-plugin-for-downloading-url
希望有所帮助!
答案 1 :(得分:1)
我认为如果您已经进行了投资,为什么不写一个原生应用程序呢?
为了让PhoneGap应用程序与您的CoreData解决方案集成,您将不得不做一些“有趣”的事情。
答案 2 :(得分:1)
是不是可以使用PhoneGap自己的localStorage API(这是一个SQLite数据库,顺便说一句)?
http://docs.phonegap.com/en/2.5.0/cordova_storage_storage.md.html