UITextview
Web サービスを介してサーバーにテキストを送信する iPhone アプリケーションがあります。次のページでは、Web サービスを介してサーバーからのコメントのリストを表示しています。に絵文字/顔文字を挿入する場合を除いて、すべて正常に動作していUITextview
ます。
次のページには、一部の絵文字の代わりに正方形のボックスが表示されます (すべてではありません)。
私はそれに気づきました:
作業:
UITextview
絵文字キーボードから 1 つの絵文字文字を挿入し、そのコードをログ \u2601 に出力し、このテキストをサーバーに送信しました。次のページで、同じユニコード \u2601 を取得し、正常に動作しています。絵文字アイコンが表示されます。動作しない: 絵文字キーボードから別の絵文字を挿入し、
UITextview
そのコードをログ \ud83d\udc16 に出力して、このテキストをサーバーに送信しました。次のページで、送信したものとは異なる Unicode コードポイントを取得しました: \uf416. iPhone はこの Unicode を認識しないため、四角いボックスが表示されます。
では、ここで何が問題なのですか?絵文字に Unicode コードポイントのペアがある場合にのみ機能しません。
コメントが保存されるデータベースは MySQL バージョン 5.5 です。
サーバーから取得したときに絵文字の文字コードのペアが変わるのはなぜですか? iPhoneが認識できるように、取得したUnicodeを元の形式にデコードする方法は?