ソフトバンクの絵文字も実体参照で書ける件について
ソフトバンク3GC携帯でSSLのURLを直打ちアクセスすると絵文字が化ける件について色々調べたのでメモ。
現象
絵文字をWebコードで書いたコンテンツをhttpsで見る際、3GC携帯でURLをブラウザに直接入力してアクセスすると絵文字が化ける。3GC以前のW型端末などでは発生せず、また3GCでもhttpの場合はURL直打ちでも化けない。
また文字化けしていないページからリンクやフォーム送信でhttpsに移動しても化けることはない。
原因
- C/P/W 型端末のブラウザはWebページをShift_JISで解釈するが、3GC端末はUTF-8で解釈する。
- Shift_JISで記述されたページはSoftBankのゲートウェイ(Pull-GW)を通過する際に3GCでも読めるようにUTF-8に変換されるため通常は文字化けしない。
- ところがSSLのアドレスをURL直打ちでアクセスした場合のみGWでの変換に何らかの不都合が生じ、結果3GC端末では文字化けする。
- URL直打ちでなくリンクやフォームの送信によってhttpsのアドレスに遷移した場合は文字化けは発生しない。
- QRコードからのアクセス及びメールに記載のURLをクリックした場合も直打ちとみなされ、URLがhttpsの場合は上記問題が発生する。
回避方法
絵文字をWEBコードではなく、 のように実体参照で書く。テスト用のW端末および3GC端末上では、
絵文字を実体参照で記述することについて
絵文字の実体参照値の範囲。
 ~   ~   ~   ~   ~   ~ 
絵文字表記についてはソフトバンクの公式文書にしても他の情報源にしてもWebコードで記述しよう的な空気で書いてあり、実体参照が本当に適正なのかはちょっと自信がない。
ただ公式文書のHTML編46ページに以下の記述がある:
同じくまたHTML編16ページで
- P5/P6/P7型のHTML解釈はP4(2)と同じである
とあるので、P4(2)/P5/P6/P7/W/3GCの各端末で絵文字を数値実体参照で表記できる、ということになる。逆にサポートしない端末はC2/C3/C4/P4(1)の端末ということになる。
C型なんか普通は今更サポートしないから問題は微妙なラインのP4(1)型。これには P51/SH51/K51/T51/SA51/SH52 が該当する。