Phonegap / Cordova Android上的Indexeddb存储限制以及如何增加限制?

时间:2019-02-24 11:28:50

标签: android html5 cordova indexeddb phonegap

是否对Android Cordova / Phonegap应用程序的indexeddb施加了任何存储限制,就像localStorage一样(5MB)。如果是,那么我如何明确要求用户为数据库授予更多磁盘空间?我尝试找到一些插件,但失败了。我想存储JSON对象和文件Blob。

我在这里看到300MB已通过安全测试: https://stackoverflow.com/a/20675480/3134961

2 个答案:

答案 0 :(得分:1)

Raymond CAMDEN写了一篇非常有趣的文章,它将指导您:https://www.raymondcamden.com/2015/04/17/indexeddb-and-limits

您也可以阅读以下内容:

  

共享池最多可占可用磁盘空间的1/3。

     

应用已使用的存储空间包含在   共享池也就是说,计算基于   存储空间+应用程序正在使用的存储空间)* .333。

     

每个应用程序最多可以拥有20%的共享池。

     

例如,如果总可用磁盘空间为60 GB,则共享   池为20 GB,该应用程序最多可具有4 GB。这是计算出来的   从可用磁盘空间的1/3(最大20 GB)的20%(最大4 GB)   (60 GB)。

https://developer.chrome.com/apps/offline_storage#temporary

答案 1 :(得分:0)

由于没有存储限制,最好通过cordova-sqlite-storage之类的插件将数据存储在本地SQLite数据库中。

还要注意,在iOS上,所有Webview数据(包括IndexedDB)都被视为缓存数据,这意味着如果设备上的存储空间不足,操作系统可以擦除它。