Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 哪种方法可以更快更安全地缓存json数据?_Android_Json_Caching_Sharedpreferences - Fatal编程技术网

Android 哪种方法可以更快更安全地缓存json数据?

Android 哪种方法可以更快更安全地缓存json数据?,android,json,caching,sharedpreferences,Android,Json,Caching,Sharedpreferences,我应该做一个应用程序,将工作在离线模式和在线模式。我将缓存在线模式下的Json数据,然后用户将能够在离线模式下使用此应用程序 我正在使用jackson library从url获取json。我必须将JsonNodes缓存到设备。用户将无法看到缓存的数据。我现在在私有模式下使用SharedReferences方法。代码工作得很好。没有过载和减速 我希望你的想法,使一个完美的工作安全的应用程序。SharedReferences是缓存数据的正确方法吗?若否,原因为何?如果不是,我在使用SharedRef

我应该做一个应用程序,将工作在离线模式和在线模式。我将缓存在线模式下的Json数据,然后用户将能够在离线模式下使用此应用程序

我正在使用jackson library从url获取json。我必须将JsonNodes缓存到设备。用户将无法看到缓存的数据。我现在在私有模式下使用SharedReferences方法。代码工作得很好。没有过载和减速


我希望你的想法,使一个完美的工作安全的应用程序。SharedReferences是缓存数据的正确方法吗?若否,原因为何?如果不是,我在使用SharedReferences时会遇到什么问题?

您可以使用一个与缓存一起工作的网络库,以使其透明。(我认为Volley可以做到这一点)我不建议使用SharedReferences进行缓存。SharedReferences是用来存储首选项和小型结构,而不是大量缓存数据。您可以使用
Context.getCacheDir()
来实现这一点。不同之处在于,当缓存目录变得太大时,可以使用清除缓存目录,而SharedReferences不能。此外,SharedReference可能会备份到Google的云(如果用户选择启用),这在缓存数据的情况下是不需要的。我可以清除SharedReference,并且可以通过编程控制缓存数据的大小。