Adobe のプロダクトマネージャ Mike Chambers さんの記事 『Why Apollo?』 よりThe HTML engine used within Apollo is the open source WebKit engine. This is the engine behind a number of browsers, including KHTML on KDE and Safari on Mac OS X.Adobe のクロスプラットホーム対応デスクトップ・アプリケーション実行環境 Apollo は、 FLASH だけでなくて WebKit(≒Safari、KHTML)ベースのウェブブラウザ機能を搭載している。 『Apollo 登場!もう Safari の確認用に Mac 買わなくてよくね?』 の通り、ついに Windows 内で Safari の動作確認ができるのかも! と思ったけど、Apollo と現行 Safari は少し違うみたい。 Safari で XHR を使う場合、サーバ側が出力する Content-Type ヘッダで charset=UTF-8 を 指定していないと、responseText で得られるテキストのエンコーディングが Latin-1 扱いになり、 UTF-8 なテキストファイルで文字化けが発生してしまう問題がある。 回避策は 『Safari の responseText で UTF-8 コード文字化け回避』 に書いたコード function recover_utf8 (text) {のような関数を通すと Latin-1⇒UTF-8 変換できて、文字化けを回避できる。 しかし、Scout ではこの文字化けが発生していなかった。 responseText をデフォルトで UTF-8 扱いするように変わっている模様。 Scout (Apollo 1.0α) で表示した場合: ![]() Mozilla/5.0 (Windows; U; en) AppleWebKit/420+ (KHTML, like Gecko) Safari/419.3 Apollo/1.0.Alpha1 Safari で表示した場合: ![]() Mozilla/5.0 (Macintosh; U; PPC Mac OS X; ja-jp) AppleWebKit/419 (KHTML, like Gecko) Safari/419.3 『文字化け対策なし』の行が、Safari でのみ文字化けしているのがポイント。 Safari だと文字化けしていたものが Apollo で文字化けしなくなったのは、 WebKit 419→420+ の違いなのか、あるいは Apollo の独自仕様なのかは不明。 420+ のためだとすると、Safari も次のバージョンでは直るのかな? また、『Safari ブラウザ・クラッシャー』 のコードは、AppleWebKit/419 な Safari を クラッシュさせるのだけど、AppleWebKit/420+ な Apollo はクラッシュしない。 他にもいろいろ違いがあるのかもしれない。 結論:Apollo は単純には Safari の動作確認には使えなそう。(残念) (2007/04/09:追記) WebKit Nightly Builds で表示した場合: ![]() Mozilla/5.0 (Macintosh; U; PPC Mac OS X; ja-jp) AppleWebKit/522+ (KHTML, like Gecko) Safari/419.3 最新版 WebKit を試してみると、文字化けしなくなっていた! クラッシュもしない。 恐らく Apollo は最新版に近い動作なんですね。現行の公式 Safari は少し古いまま? |
| << 前記事(2007/04/06) | トップへ | 後記事(2007/04/14)>> |
| タイトル (本文) | ブログ名/日時 |
|---|---|
ページ確認のための Safari は不要?
Apollo が搭載している Webkit を使ったブラウザちっくなアプリを作ってしまえば,もう Safari いらないかも,などと何かの作業中にふと思ってみました. (詳しくは 先人方の記事 を参照.... ...続きを見る |
岩家ぶろぐ 2007/04/29 05:10 |
| 内 容 | ニックネーム/日時 |
|---|
| << 前記事(2007/04/06) | トップへ | 後記事(2007/04/14)>> |