読者です 読者をやめる 読者になる 読者になる

モバイルサイトを3キャリアでほぼ共通化して作りたい

HTML CGI

フルブラウザ搭載機種が増えてきたとはいえ、実際に使うにはそれなりに定額サービスを利用しなければいけないし、操作性などを考えるとまだまだモバイルサイトを作る需要はある。未だに iモード向けコンテンツ (C-HTML) で作るのが一番簡単に共通化できるようだが、3G機種に焦点をあてて DoCoMo、au、SoftBank の最近の動向(2008年 5月 現在)を探ってみた。
なお、PC サイトのモバイルサイトを作るための情報収集のため、絵文字の利用については考慮しない。

各キャリアのコンテンツ制作者向けサイト

DoCoMo

開発者向け情報 | サービス・機能 | NTTドコモ

  • DoCoMo は i-CSS といって外部CSSファイルをサポートしていないのでインラインで定義しかできない。
  • iモード対応XHTML 2.0 から table 要素に対応している。

文字エンコーディング

SoftBank の機種を考慮すると、Shift_JIS での統一だけでは辛いようだ。
ネット上情報を探し回った結果文字エンコーディングは UTF-8 にほとんど対応しているものの Shift_JIS にしておき、そして CGI で受け取ったデータは、Shift_JISUTF-8 の順で判別するのがマシに思えた。

  • 表示のみであれば、UTF-8 での統一は可能である。
  • au は GET, POST された情報が UTF-8 のページでも Shift_JIS になるらしい。
  • SoftBank の 3GC型(Shift_JIS非対応)機種はページが Shift_JIS でも GET, POST されたデータは UTF-8 になる。

HTTP ヘッダ

Content-Type の出力
application/xhtml+xml; charset=Shift_JIS

ユーザエージェント

au

KDDI」で始まる ( 404 Not Found )

SoftBank

SoftBank」もしくは「Vodafone」もしくは「MOT」で始まる ( )

XHTML

DoCoMo
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.0) 1.0//EN" "i-xhtml_4ja_10.dtd">
au
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//OPENWAVE//DTD XHTML 1.0//EN" "http://www.openwave.com/DTD/xhtml-basic.dtd"> 
SoftBank
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//J-PHONE//DTD XHTML Basic 1.0 Plus//EN" "xhtml-basic10-plus.dtd">

画像フォーマット

対応は下記のとおりなので JPEG に統一がベター。ただアイコンようなを使うとすればむしろ GIF, PNG で分けたほうがいいかもしれない。ページ全体のサイズ制限にも注意が必要だろう。

au

GIF, JPEG, PNG ( 404 Not Found )

SoftBank

JPEG, PNG, GIF(一部古い機種で表示できない) ( ページが見つかりません )