我有一个 iOS 应用程序,它查看粘贴板的内容并尝试用它做一些(希望)智能的事情。(该应用程序需要 iOS 9.3+,尽管此时我想大多数人都在使用 iOS 11.x。)
问题是我的设备(iPhone X)总是从我的 MacBook Pro 复制数据。例如,我可以在我的 MacBook 上选择和复制文本,然后将其放入粘贴板中。然后在我的 iPhone 上,我可以选择并复制诸如我的电子邮件地址之类的文本,然后将其放到那里的粘贴板上。但是当我运行我的应用程序并尝试访问粘贴板时,它需要几秒钟,然后使用我 MacBook 上的文本!
这特别烦人,因为它在通过网络拉取数据时会导致延迟,使我的 UI 无响应。我宁愿让[UIPasteboard -hasStrings]
方法立即返回。
我知道我可以在添加项目时使用setItems:options:
选项值,UIPasteboardOptionLocalOnly
以便这些项目将保留在设备上而不是转移到 MacBook。但该选项不会阻止粘贴板自动从 MacBook 中提取数据。
有什么方法可以防止hasStrings
自动从远程笔记本电脑中提取数据,而无需在设备上完全禁用该功能(即,我不想强制用户在系统级别为所有应用程序禁用 Handoff)。