如果UIPasteboard对象被设置为“持久化”,则似乎UIPasteboard的项存储在数据库中或类似的东西中。那么,是否有任何提示可以让我找到数据存储在系统中的位置?越狱。提前谢谢。
发布于 2015-11-05 09:35:57
Pasteboard由位于com.apple.UIKit.pasteboardd的/System/Library/Frameworks/UIKit.framework/Support/pasteboardd守护进程管理。它并不总是运行,只有当某人真正需要它时,即使用复制/粘贴。
它确实使用了一个持久存储- /var/mobile/Library/Caches/com.apple.UIKit.pboard/pasteboardDB二进制属性列表。即使是SIGKILL守护进程,它也会从数据库中恢复pasteboard内容。
pasteboardDB根对象是NSArray。每个元素都是一个绑定到特定包id和名称的NSDictionary对象。例如,一般复制/粘贴使用共享存储-字典有bundle->com.apple.UIKit.pboard和name->com.apple.UIKit.pboard.general键。在items键下有一组粘贴板项目。Yoy可以尝试复制一些文本,您会发现它作为未加密的UTF8字符串存储在NSData对象中。
https://stackoverflow.com/questions/33539624
复制相似问题