React-Native AsyncStorage在哪里使用iPhone模拟器将数据保存在磁盘上?

时间:2017-01-21 14:35:43

标签: react-native ios-simulator asyncstorage

使用IOS Simulator,React-Native AsyncStorage在哪里将数据保存在磁盘上?

我正在使用IOS Simulator 10.0版并运行IOS 10.2和react-native 0.40.0

2 个答案:

答案 0 :(得分:4)

React Native异步存储数据位于应用程序沙箱的Documents文件夹中。对于react-native 0.40.0,它是Documents/RCTAsyncLocalStorage_V1/manifest.json

iOS模拟器(Xcode 8.2)的沙盒文件夹路径为:~/Library/Developer/CoreSimulator/Devices/{DEVICE_ID}/data/Containers/Data/Application/{APP_ID}

要查找DEVICE_ID,您可以使用终端中的xcrun simctl list。 由于您的应用程序在每次运行时都会获得新的APP_ID,因此您无法轻松找到它。我简单列出了Application中的所有文件并获得最近的更新。有关其他解决方案,请参阅Xcode 6 keeps renaming my app's directory in iOS8 simulator after each run.和相关信息。

答案 1 :(得分:1)

基于其他有用的评论和答案,让我总结一下如何检查AsyncStorage:

首先,cd进入异步目录。

cd `xcrun simctl get_app_container booted $BUNDLE_ID data`/Documents/RCTAsyncLocalStorage_V1

然后查看清单:

jq < manifest.json

然后在清单中漂亮地打印一个非空值:

jq '."somekey"|fromjson' < manifest.json

对于null值,找到具有以下值的文件:

md5 -s "otherkey"
# 90f5ba064f8280d4c94b1f0b1a85a79e

然后漂亮地打印该文件:

jq < 90f5ba064f8280d4c94b1f0b1a85a79e

我也在gist

中分享了此信息