我的公司目前正在过渡到新的架构以及为移动设备提供服务的模型。我们的应用程序传统上是基于网络的(HTML5/CSS3/JS/PHP/MYSQL),所以我们希望能够将其移植到移动平台,而不必重新发明轮子(Cordova),以及以独立方式连接到桌面(AppJS)这样我们就不必担心与浏览器相关的错误。我们也正在从PHP to NodeJS使这更加可行。
问题是,我们的用户需要能够离线使用我们的应用程序,而在将其“同步”到我们的服务器之前,他们可以存储多长时间或多少数据,没有真正的限制。
对于 AppJS,这不是问题,因为它们可以在 sqlite 数据库中存储所需的尽可能多的数据。但是,我发现了一个关于5MB配额用于 WebSQL 数据和 cordova/phonegap。这对我们的业务需求提出了明显的技术挑战。
我知道有几个插件可以让您使用 sqlite 数据。原始的 sqlite 插件(https://github.com/davibe/Phonegap-SQLitePlugin)缺乏 Android 文档,而另一个(https://github.com/chbrody/Cordova-SQLitePlugin)要求我指定一个数据限制显然不可能。因此,我只剩下很少的选择,其中一个是将数据库分割成多个由 JS 包装器控制的 5MB 段。
您能否将大型数据结构拆分为多个 5MB Websql 数据库,并且在 iOS 和 Android 上都不会出现问题?
对于 android 平台,您可以创建一个本机应用程序,然后使用 webview 来显示前端(如果保持 HTML 真的很重要),然后使用 javascript 桥来允许 WebView 中的内容与您的交互本机应用程序。
不过,根据您对应用程序的描述,我认为您最好实际创建一个本机应用程序。正如您在评论中所说,您更换平台的原因之一是缺乏控制。那么为什么要立即通过将各种混合应用程序框架引入您的堆栈来重新打开这个蠕虫罐呢?
长话短说,如果您采用本机方法,您将拥有完全的控制权(并且很可能获得更好的产品)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)