私は以下を使用しています:
(preg_match('/^Mozilla\/5\.0.*Android\s[12]\..*\sMobile/i', $_SERVER['HTTP_USER_AGENT'])
&& !preg_match('/\sChrom/i', $_SERVER['HTTP_USER_AGENT']))
古い Android プラットフォーム (1.x または 2.x) ( SVG をサポートしていない) の Android ブラウザーに一致させるため。
- 「Chrome」と「Chromium」の両方を除外する「Chrom」 (後者は存在しない可能性があります)
- 現在、Firefox には Android バージョンが含まれていません。つまり、上記と完全に一致していません。Android のバージョン番号の追加を開始する場合に備えて、以下に明示的な除外を追加しました。
いくつかのテスト文字列:
古い Android ブラウザ
Mozilla/5.0 (Linux; U; Android 2.3.5; en-gb; SAMSUNG GT-I9100/I9100BUKJ3 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Android の Chrome
Mozilla/5.0 (Linux; Android 4.1.2; GT-I9100 Build/JZO54K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.59 Mobile Safari/537.36
Android 上の Firefox
Mozilla/5.0 (Android; Mobile; rv:26.0) Gecko/26.0 Firefox/26.0
Android 上の Opera Mini
Opera/9.80 (Android; Opera Mini/7.5.33361/34.788; U; en) Presto/2.8.119 Version/11.10 Mozilla/5.0 (Linux; U; Android 2.3.5; en-gb; GT-I9100 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Android ブラウザのすべてのバージョン + Firefox を除く:
(preg_match('/^Mozilla\/5\.0.*Android\s\d\..*\sMobile/i', $_SERVER['HTTP_USER_AGENT'])
&& !preg_match('/\sChrom/i', $_SERVER['HTTP_USER_AGENT'])
&& !preg_match('/\sFirefox/i', $_SERVER['HTTP_USER_AGENT']))
これは、使用されたテスト ユーザー エージェントと同じくらい良いものです。そのため、コメントで独自の情報を提供してください。