2008/09/01, 17:01 - プライベート, IT
休みでも結構いろいろ用事は出てくるものだが、今日の日中は時間があったのでblogの処理を弄って(というか新規作成)携帯でも閲覧できるようにしてみた。 ・・・だいぶメンドイ。 携帯コンテンツは作った事がない・・・事もないのだが、 メイン案件の片手間(といってはイケナイが。)にサポートとして 少し関わった程度の経験しかないので大分シンドかった。。 作成にあたっては、 ・PC版と同じURLで閲覧可能な事 ・どのキャリアからでも閲覧可能な事 のみを要件とした。(自分の携帯から触れればいいやって事で。) で、いざやり始めると、いろいろ出てくる出てくる。 何がシンドイって、まずキャリア毎にコンテンツ記述言語が異なる。 サポートに入った時にワーワー騒いだ経験があったので、 前知識としては持っていたが、やっぱメンドイ。 結局は、キャリア毎に処理をイジるのは大分シンドイ・・・ という結論に達し、全てのページでPCと全く同じURLというのはヤメて、 入り口のディレクトリに .htaccess を設置し mod_rewrite を使用して USER_AGENT を判別し、PC版、携帯版の振り分けを行う事にした。 が、このユーザエージェントがつらい! 携帯ごとにある程度の法則はあるのだが、ホントにこれだけでいいの? というのは各キャリアの端末情報を調べないとわからない。 そういえば、業務でやったときは携帯端末情報のDBとかもってたりしたなぁ。 でも・・・ やってられるかい!ってわけで、とりあえず大まかに定義しとこう。 --------------------------------------------------------------- RewriteEngine On RewriteCond %{HTTP_USER_AGENT} DoCoMo [NC] RewriteRule ^$ http://www.magata.net/mobile/ [L] RewriteCond %{HTTP_USER_AGENT} vodafone [NC] RewriteRule ^$ http://www.magata.net/mobile/ [L] RewriteCond %{HTTP_USER_AGENT} J-PHONE [NC] RewriteRule ^$ http://www.magata.net/mobile/ [L] RewriteCond %{HTTP_USER_AGENT} SoftBank [NC] RewriteRule ^$ http://www.magata.net/mobile/ [L] RewriteCond %{HTTP_USER_AGENT} Up.Browser [NC] RewriteRule ^$ http://www.magata.net/mobile/ [L] --------------------------------------------------------------- あっ、そーいや前に自分専用のスケジュール管理アプリをPHPで作った時に、 ライブラリ使った事あるぞ。。 こ、これや! PEARのNet/UserAgent/Mobile.php ・・・ま、でも今回は mod_rewrite で行こう。 あん時は SoftBankもなかったし。 で、次にどのキャリアの端末からでも見られるように、処理の中で ユーザエージェントによってさらに振り分けをしようと思った・・・が 端末ごとに別のテンプレを書くのも面倒だ。と思い直し、 新しめの携帯で見れたらいーや。という結論に到達しxhtmlで記述する事に。 が、各キャリアが推奨としているDOCTYPEはキャリア独自のものらしく、 それぞれ少しずつ違うらしい。 ググってみると、なんだが XHTML1.0 Transitional だとだいたいどのキャリアでも きちんと表示できそうなカンジ。。 ハイ!これに決まり! 基本的にはHTMLとそれほど変わりないので、違和感なくコーディング完。 使用してるタグもドコモの技術資料ではOKなものばかりにした。 (他キャリアは知らん!資料見てないけど、だいたい一緒やろ。) 完成ー!? ドコモは自分の携帯(N705i)から確認してOK。 あとのキャリアはシュミレータで確認・・・ なんで auのSDKは公開停止中? ハイ・・・だいたいOKです!もし仕事だったらこうはいかないが、(イヤ!マジで!ちゃんとやりますよ!) 完全に興味本位のいわば息抜きなので、これでよしとしよう。うん。 まぁ、画像サイズ制限とか、文字コードとか他にもいろいろあるようだが、 とりあえずDoCoMo端末で見れてるし、まっ、いっか! また気が向いたら・・ | このエントリーのURL
|