携帯サイト構築メモ SoftBank編

携帯サイトを構築するうえでのメモです。

とりあえず全キャリアやろうと思います。

まずはSoftBankから。

1.各型の種類

(C型)
J-PHONE/1.x 〜
J-PHONE/2.x 〜 (C2型)
J-PHONE/3.x 〜 (C3型)

(P型)
J-PHONE/4.x 〜

(W型)
J-PHONE/5.x 〜

(3GC型)
Vodafone/1.x 〜
SoftBank/1.x 〜

細かく分けるとさらに色々ある。


2.文字コード

(出力)
3GC型以外の場合はShift_JISで記述すればおk
3GC型の場合はUTF-8で記述(Shift_JISに対応していない端末もある)

(ブラウザの文字エンコーディングの判定)
C型では以下のような順番で判定

a.metaのContent-Type
b.テキスト先頭数バイトの内容で自動判別

P/W/3GC型では以下の順番で判定

a.HTTPのContent-Typeレスポンスヘッダフィールド
b.metaのContent-Type
c.Shift_JISとして強制的に扱う

(端末 => Webサーバーへのリクエスト)

P/W型端末からのリクエストであり、かつSSL/TLSを利用している場合はHTMLを表記している文字エンコーディングを継承して、リクエスト送信。

それ以外の場合、HTMLの文字エンコーディングUTF-8以外だったら
全てShift_JISでリクエスト送信
UTF-8だったらUTF-8でリクエスト送信

※3GC型のShift_JIS非対応端末の場合、HTMLの文字エンコーディングUTF-8以外の場合でもUTF-8で送信


3.URL

(クエリ名に使用できない予約語

pid, sid, uid, lid, gid, rpid, rsid, nl, cl, ol, pl, jsky(*), prc, cnt, reg, vsekey, vsernk

(画像ファイル)

JPEGファイルはC2型端末では利用できない
MNGファイルはC型、3GC型端末では利用できない
GIFファイルはC,P,W型では利用できない

(formタグのaction属性)

P4(1)型端末はaction属性で与えたURLにGETメソッドがある場合、パラメーターは削除される
C型ではURLにクエリは使用できない
URLの長さは255byte以下に抑えることが理想


5.絵文字

(絵文字の範囲)

Shift_JISの範囲

絵文字1 0x1B 24 47 (0x21-0x7A) 0x0F
絵文字2 0x1B 24 45 (0x21-0x7A) 0x0F
絵文字3 0x1B 24 46 (0x21-0x7A) 0x0F
絵文字4 0x1B 24 4F (0x21-0x6D) 0x0F
絵文字5 0x1B 24 50 (0x21-0x6C) 0x0F
絵文字6 0x1B 24 51 (0x21-0x59) 0x0F

UTF-8の範囲

絵文字1 \uE001〜\uE05A
絵文字2 \uE101〜\uE15A
絵文字3 \uE201〜\uE25A
絵文字4 \uE301〜\uE34D
絵文字5 \uE401〜\uE44C
絵文字6 \uE501〜\uE539

(絵文字を扱う時の注意点)

3GC端末のSH系以外ではHTMLの表記がUTF-8以外のformからは絵文字が送信できない。(SoftBankのサーバー側で削除されてデータが送信される)

Shift_JISで端末->Webサーバーに絵文字を送信する場合、絵文字が連続する場合には注意。
絵文字1が2個連続する場合の例を以下に示す。

0x1B 24 47 0x21 0x22 0x0F


5.XHTML

XHTMLが利用出来るのはW/3GC型
XML宣言と以下のDocumentTypeを定義する

<!DOCTYPE html PUBLIC "-//J-PHONE//DTD XHTML Basic 1.0 Plus//EN" "xhtml-basic10-plus.dtd">


とりあえずこんなとこ。

他にもあれば追記するかも。