在云中调试iCloud键值数据

时间:2013-06-05 12:07:40

标签: icloud key-value key-value-store icloud-api nsubiquitouskeyvaluestore

我一直在撞墙,试图弄清楚如何确定给定应用的键值存储中的实际内容。使用api检测数据对我来说似乎很可疑,因为我害怕得到误报。此外,我不得不猜测还有什么可能存在(即从应用程序的先前版本或其他)。据我所知,开发人员测试website仅显示云中的文件,而不是键值存储。有谁知道如何访问这些数据,或文件系统中存储本地.plist文件的位置(我认为它仍然在.plist中)?

2 个答案:

答案 0 :(得分:6)

我终于找到了它。到达那里有一条迂回的路线。 ~/Library/SyncedPreferences/com.apple.syncedpreferences.plist为每个应用程序包都有一个字典条目。在该词典里面是关键plistPath。这指向实际的plist文件,其中包含应用程序的键值数据(无论如何在本地设备上)。此文件存储在~/Library/Containers/<bundleName>/Data/Library/SyncedPreferences的应用容器中,似乎名为<bundleName>.plist。仍然不知道如何查看云中的实际内容,所以我想我必须要相信本地文件中的内容。 :)

答案 1 :(得分:0)

我知道这个问题很旧,但出现在Google搜索中,因此可能会对他人有所帮助。

如果设备是模拟器,则路径如下:

应用程序捆绑包列表的目录为:

~/Library/Developer/CoreSimulator/Devices/<Device-ID>/data/Library/SyncedPreferences/com.apple.syncedpreferences.plist

包含您的应用的键值数据的文件:

~/Library/Developer/CoreSimulator/Devices/<Device-ID>/data/Containers/Data/Application/<App-ID>/Library/SyncedPreferences/<bundleName>.plist