不穏な警告メッセージ
iOSのIMEを初めて変えた時に出た
すべての入力内容を転送することを許可します。
警告通りすべての入力がサードパーティ製のIMEに渡ってしまうのかな?
とMobileSafari上でのIMEの挙動を見てみた記事です。
利用したサードパーティ製IMEの挙動がどうこう言うわけではありません、誤解なきようお願いします。
IMEをSimejiに変える時に出たメッセージです。
あとiOS8.3で挙動みてます。
挙動確認用のページを作成
サクッとjsfiddleでいろんなtypeのinputを作成するページを作ってみました。
https://jsfiddle.net/85eywokz/11/embedded/result/
モバイルから表示するにしてはかなり愛想がないサンプルですが、inputフィールドにフォーカスを合わせる際に表示されるキーボードを確認したいだけなので、この状態でデフォルトのキーボードをSimejiにして挙動を確認していってみる。
input要素のtype属性の一覧は
https://developer.mozilla.org/ja/docs/Web/HTML/Element/Input
から抜粋してます。
input type='password'とtype='tel'はiOS標準のIMEが強制される模様
結論はタイトル通り。
typeによる判定ではpasswordとtelはサードパーティ製のIMEには渡さないようです。
クレジットカード番号は?
textで指定してたらだめなんじゃないかなぁとおもってましたが、amazonとか見ると標準のキーボードがでてきました。よくわかりません。
クレジットカードを読み取る が有効になるような状態であれば、標準のIMEになるのか?との仮説で調べてみたけどどうもそうでもない模様。
サードパーティ製IMEの上にクレジットカードを読み取るボタンがでてしまった。
※クレジットカードを読み取るはhttpsアクセスしないと有効になりません。
どういうルールでiOSがサードパーティ製IMEを出すか標準のIMEを出すのかこの辺りはよくわかりませんがなんらかの手段でサードパーティ製IMEに渡さない方法はあるっぽい。
おわりに
というわけで挙動をみてみました。
少なくともMobileSafari向けのWebアプリでサードパーティ製のIMEを経由(しない/させない)入力が作れる模様です。