以前書いた記事の続報。大変困った。
せっかくUAが『Chrome』でも標準ブラウザ判定をしてやっていたのに、先日のOSアップデートでAndroid4.3になったのをきっかけに最近のChromeに挙動が近づいたようです。
Chromeは2013/2/28のアップデートにより大きく仕様変更がありました。
Android4.3アップデート前のGALAXY S4のブラウザはこの仕様変更よりも前のものをフォークして作られたものであり、今回のアップデートにより以下のようにUser Agentが変わったので昨年のChrome仕様変更後のChromiumがフォークしなおされた、あるいはマージされたと推測されます。
Mozilla/5.0 (Linux; Android 4.3; ja-jp; SC-04E Build/JSS15J) AppleWebKit/537.36 (KHTML, like Gecko) Version/1.5 Chrome/28.0.1500.94 Mobile Safari/537.36
その為、GALAXY S4の標準ブラウザは昨年のChromeアップデート以後の仕様を継承したようです。
この仕様変更により大きく変わったもので目につくのが、JSでウィンドウサイズ(フレームサイズ)を取得する際の挙動の変化です。
詳細は割愛しますが、昨年のChrome仕様の後にいわゆるAndroid標準ブラウザ(Android stock browser)と大きく異なるようになったためChromeは別物として対応する必要がありました。
GALAXY S4の4.3アップデート以前の標準ブラウザ(S Browser)は、そのAndroid標準ブラウザとほぼ同じ挙動を示していたのに、アップデート後は現在のChromeとほぼ同等の動きをしています。
ですから、アップデート前後に対してどう対応するかという問題が出てきました。。。
また、GALAXY S3α(SC-03E)も同様にAndroid 4.3へのアップデートが予定されている(予定では先月だがまだっぽい?)のでS4と同じ対応が必要になるかもしれません。
手元にS3αが無いため、アップデート開始されても即座に確認できないので、確認されたかたがおりましたら情報提供いただけると助かりますm(_ _)m
追記
JSによる判別
自身が昨年のChromeアップデート対応を施したコードを見なおしたところ、もはやChromeなのか標準ブラウザなのかという見分け方よりも、Chromeでバージョン25より新しいのかどうかを確認した方が確実であると判断したので以下のような式を用意しました。
var v = window.navigator.userAgent.match(/\sChrome\/([0-9.]+)/)[1].split('.')[0];
変数v
にメジャーバージョンが代入されるので、これで比較が可能です。ご参考ください。
後発のGALAXY S3αに関して
4/17にdocomoからアップデートが実施されたようです。
UAを確認したところ以下のようになっていました。
Mozilla/5.0 (Linux; U; Android 4.3; ja-jp; SC-03E Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30
Chromeの表記はありませんでした。ということはS Browserではない?なんかモヤっとしますね。
コメント
>ようちゃんさん
どうもご無沙汰ですm(_ _)m
もうGalaxyシリーズもS5ですか。
S4は自分が所持してるわけではなく、会社の検証機をいじっていたのですが、S5は現時点で導入されていないので検証できてないですねー。Xperiaの勢力が伸びてきたのでそちらを重視している感じです。
標準ブラウザのブックマークはたいていどの機種も一応は同期で引き継げるっぽいですね。でもフォルダ維持されないって不便すぎる。。。
結局のところ、Galaxy S5に機種変更しました。
S4の同期設定をしていたので、
S5に変更後、同期からブックマークの移行ができました。
※フォルダは引き継がれず。。。
S5まだ触れていません。そろそろ対応したほうが良さそうですね。。。
なんかS4のブラウザも表示領域サイズの取得でChromeとは違う挙動を示してるので悩んでいるところです。
もはや仕事のほとんどがGalaxyシリーズへの対応みたいになってしまっていてかつてのIE6対応の様な状態で非常に厄介です。
Galaxy S5が発売され、店頭で触りましたが、ブラウザの見た目がまた変わったようですね。
Chromeにまた近づいているような感じです。
本当はS4(Android4.3)の今の状態で、Chromeにブックマークを持っていければいいんですが、、、
ためしに共有で、こつこつと、アプリ等にコピーしようと思います。
>ようちゃんさん
すみません、返信遅くなりました。
実際に調べてはいませんが、ブックマーク関係も従来の標準ブラウザと異なっているとは思います。
やはりChromeと同等の仕様なのでは・・・と思います。
どうもこの影響なのか、標準ブラウザのブックマークをエキスポートするツールがうまく動作しないようです。
あと、ブックマーク保存場所が変わったりするのでしょうか?