我一直在努力想弄清楚如何确定给定应用程序的键值存储中的实际内容。使用 api 检测数据对我来说似乎很可疑,因为我害怕得到误报。此外,我不得不猜测可能还有什么(即来自应用程序的早期版本或其他版本)。据我所知,开发者测试网站只显示云中的文件,而不是键值存储。有谁知道如何访问这些数据,或者本地 .plist 文件存储在文件系统的哪个位置(我假设它无论如何都在 .plist 中)?
2 回答
我终于找到了。有一条迂回的路线可以到达那里。~/Library/SyncedPreferences/com.apple.syncedpreferences.plist
每个应用程序包都有一个字典条目。在那个字典里面是 key plistPath
。这指向包含应用程序键值数据的实际 plist 文件(无论如何在本地设备上)。此文件存储在您应用的容器中~/Library/Containers/<bundleName>/Data/Library/SyncedPreferences
,名称为<bundleName>.plist
. 仍然不知道如何查看云中的实际内容,所以我想我将不得不相信本地文件中的内容。:)
我知道这个问题很老,但出现在谷歌搜索中,所以它可能对其他人有所帮助。
如果设备是模拟器,路径如下:
应用程序包列表的目录是:
~/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