私はペーストボードの内容を見て、それと知的な何か(うまくいけば)をしようとするiOSアプリを持っています。 (この時点では、ほとんどの人がiOS 11.xを使用していると思うが、現時点ではiOS 9.3以降が必要です)UIPasteboardがHandoffを使用して別のデバイスのテキストをコピーできないようにすることはできますか?
問題は、私のデバイス(iPhone X)が常にMacBook Proのデータをコピーしてしまうことです。たとえば、MacBookでテキストを選択してコピーし、そこのペーストボードに貼り付けることができます。その後、私のiPhoneでは、自分のメールアドレスなどのテキストを選択してコピーし、そこのペーストボードに貼り付けることができます。しかし、アプリを起動してペーストボードにアクセスしようとすると、数秒でMacBookのテキストが使用されます。
これは、ネットワークを介してデータを取得している間に遅延が発生し、UIが応答しなくなるため、特に厄介です。私はむしろただちに[UIPasteboard -hasStrings]
メソッドをすぐに返すようにしたいと思います。
setItems:options:
のオプション値をUIPasteboardOptionLocalOnly
とすると、アイテムを追加するときにそのアイテムがデバイスに残り、MacBookに転送されないようにすることができます。しかし、このオプションは、ペーストボードがMacBookから自動的にデータを取り込むことを妨げるものではありません。
hasStrings
がリモートラップトップからデータを自動的にプルするのを防ぐ方法はありますか?デバイス上でその機能を完全に無効にすることはできません(つまり、全員がシステムレベルでハンドオフを強制的に無効にしたくないアプリ)。