Xcode9.0でビルドしたアプリでクリップボードにコピーしたテキストがペーストできない時の解決法

Xcode9.0でAdMobのフレームワークを入れ替えたらarm64のエラー

Xcode9.0でビルドしたアプリをiOS11.0.1の端末で動かした時に発生した問題のメモ。

現象:昔使えていたiPhoneのクリップボードにテキストをコピーする処理が、動かない(実際はコピーできているが、ペーストできない。)

 

iOS8とか、iOS9の時代には、以下の方法で、iPhoneのクリップボードにテキストコピーして、ペーストできていた。

最近、iOS Deployment Target を8.0にしていたアプリを、iOS Deployment Target 9.0にしたことも関係しているのかも。
もしくは、iOS11のiPhoneだからなのか、Xcode9.0だからなのかまだ調査中。

 

謎なのが、クリップボードには、コピーされているんだけど、なぜかペーストできない。

UIPasteboard.general.value(forPasteboardType: “public.text”))

上記のメソッドで、クリップボードに保持しているテキスト文字列を取得できるけど、こちらでは、テキストが入っていた。

 

で、一応、解決法は以下。

 

UIPasteboard.generalのstringに文字列を指定することで、クリップボードにコピーしたテキストがペーストできました。

多分、iOS10からUIPasteboardの仕様変更があったことが原因だと思われます。

 

↓こちらを参考にしました。

[iOS 10] UIPasteboardに新しく追加されたメソッドについて

 

Xcode9.0でAdMobのフレームワークを入れ替えたらarm64のエラー

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です