Ibm mobilefirst 达到JSONStore限制的错误
我在Worklight运行时找到了。Ibm mobilefirst 达到JSONStore限制的错误,ibm-mobilefirst,jsonstore,Ibm Mobilefirst,Jsonstore,我在Worklight运行时找到了。 如果添加到集合中并达到移动设备的大小限制,WL JSONStore API是否返回错误/错误代码?是的,您应该会收到错误,但它将是一个通用错误,如持久存储失败(-1)。我建议将此测试作为应用程序常规单元、功能等测试和QA过程的一部分。如果发现意外情况,请立即报告 最近我回答了一个类似的问题:“JSON离线设备存储是否可以限制大小?”。我将在这里添加我的答案,因为我相信这可能会有所帮助 虽然此功能没有被烘焙到核心API中,但它的实现应该相当简单 JSONSto
如果添加到集合中并达到移动设备的大小限制,WL JSONStore API是否返回错误/错误代码?是的,您应该会收到错误,但它将是一个通用错误,如
持久存储失败
(-1
)。我建议将此测试作为应用程序常规单元、功能等测试和QA过程的一部分。如果发现意外情况,请立即报告
最近我回答了一个类似的问题:“JSON离线设备存储是否可以限制大小?”。我将在这里添加我的答案,因为我相信这可能会有所帮助
虽然此功能没有被烘焙到核心API中,但它的实现应该相当简单
JSONStore有一个可用于向JSONStoreInstance原型添加函数的工具。里面有一个例子应该会有所帮助
科尔多瓦有一个
注意:“大小:以字节为单位的文件大小。(长)”
JSONStore将其数据存储在以下位置:
- iOS:
[app]/Documents/wljsonstore/jsonstore.sqlite
- Android:
/data/data/com.[app name]/databases/wljsonstor/jsonstore.sqlite
jsonstore.sqlite
的文件大小
基本上你会这样做:
if(checkFileSize(collection.name+'.sqlite') < LIMIT){
collection.add(...);
}
if(checkFileSize(collection.name+'.sqlite')
使用Enhanced,您可以将该逻辑包装到自己的方法中(例如,collection.addWithSizeCheck(…)
),该方法检查文件大小并调用collection.add(…)
请注意,默认用户名是jsonstore
,因此jsonstore.sqlite
。如果您将用户名传递给它,它将使用该用户名创建一个新的.sqlite文件