- → Программирование
- → PHP
- → Статьи
Определение Android устройства на PHP, JavaScript, htaccess
С развитием мобильных устройств, вебмастера все больше уделяют времени разработке именно для портативных устройств. Хороший сайт должен выглядеть одинаково не только в разных браузерах, но и корректно на разных устройствах. Поэтому важно определять тип клиента и вносить некоторые изменение в структуру сайта, конкретно для каждого из них.
Мы уже рассматривали, как определить пользователей iPad, iPhone на PHP. Сегодня мы научимся определять Android клиент разными способами. То есть с помощью JavaScript, PHP или .htaccess. Почему именно так?
Порой бывает необходимо только подгрузить нужный CSS файл, для этого можно обойтись JavaScript определением клиента «Android».
Если нужно больше… перенаправить на поддомен, или другой URL, тогда подойдет PHP или .htaccess вариант.
Помните! некоторым пользователям не по душе, когда их «посылают» на разные домены.
JavaScript
Поиск строки UserAgent, является наиболее быстрым методом определения Android с помощью JS.
var ua = navigator.userAgent.toLowerCase(); var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile"); if(isAndroid) { // Делаем что-то, если это андроид! // Или перенаправим на андроид сайт window.location = 'http://android.site.ru'; }
PHP
Опять, тот же UserAgent, только используем функцию strstr, для поиска слова Android:
$ua = strtolower($_SERVER['HTTP_USER_AGENT']); if(stripos($ua,'android') !== false) { // && stripos($ua,'mobile') !== false) { header('Location: http://android.site.ru'); exit(); }
.htaccess
Мы можем использовать даже .htaccess директивы, для идентификации Android устройств.
RewriteCond %{HTTP_USER_AGENT} ^.*Android.*$ RewriteRule ^(.*)$ http://android.site.ru [R=301]
Вот и все! Теперь у вас есть три разных способа определения Android устройств! Надеюсь, эта статья была полезной и не скучной! Успехов вам в мобильной разработке!
Источник материала ...
Дальше: Сайт СДЛ, в чем разница между рядовым сайтом и сайтом для людей?








Development — Taras Moroz