За последние 24 часа нас посетили 17397 программистов и 1646 роботов. Сейчас ищут 974 программиста ...

Гугл Хром не видит версию для мобильных устройсв

Тема в разделе "Прочие вопросы по PHP", создана пользователем Econaft, 6 ноя 2024.

  1. Econaft

    Econaft Активный пользователь

    С нами с:
    28 июн 2014
    Сообщения:
    89
    Симпатии:
    1
    Ниже код, который до недавнего времени везде работал.
    Он и сейчас продолжает работать во всех браузерах. Но в Хроме недавно перестало работать.

    Что нужно изменить в коде, чтобы в хроме тоже заработало?

    PHP:
    1. <?php
    2. ////////////////////////////мобильные устройства
    3. $tablet_browser = 0;
    4. $mobile_browser = 0;
    5. if (preg_match('/(tablet|ipad|playbook)|(android(?!.*(mobi|opera mini)))/i', strtolower($_SERVER['HTTP_USER_AGENT']))) {
    6.     $tablet_browser++; }
    7. if (preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|android|iemobile)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) {
    8.     $mobile_browser++; }
    9. if ((strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml') > 0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))) {
    10.     $mobile_browser++; }
    11. $mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'], 0, 4));
    12. $mobile_agents = array(
    13.     'w3c ','acs-','alav','alca','amoi','audi','avan','benq','bird','blac',
    14.     'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno',
    15.     'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-',
    16.     'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-',
    17.     'newt','noki','palm','pana','pant','phil','play','port','prox',
    18.     'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar',
    19.     'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-',
    20.     'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp',
    21.     'wapr','webc','winw','winw','xda ','xda-');
    22. if (in_array($mobile_ua,$mobile_agents)) {
    23.     $mobile_browser++; }
    24. if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'opera mini') > 0) {
    25.     $mobile_browser++;
    26.     //Check for tablets on opera mini alternative headers
    27.     $stock_ua = strtolower(isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA'])?$_SERVER['HTTP_X_OPERAMINI_PHONE_UA']:(isset($_SERVER['HTTP_DEVICE_STOCK_UA'])?$_SERVER['HTTP_DEVICE_STOCK_UA']:''));
    28.     if (preg_match('/(tablet|ipad|playbook)|(android(?!.*mobile))/i', $stock_ua)) {
    29.       $tablet_browser++;  }
    30. }
    31. ?>
     
  2. Econaft

    Econaft Активный пользователь

    С нами с:
    28 июн 2014
    Сообщения:
    89
    Симпатии:
    1
    Или хотя бы может кто-то знает, что Гугл Хром понимает, чтобы переключаться на мобильный режим?
     
  3. Vladimir Kheifets

    Vladimir Kheifets Новичок

    С нами с:
    23 сен 2023
    Сообщения:
    425
    Симпатии:
    79
    Адрес:
    Бавария, Германия
    Добрый день!

    Вы можете посмотреть здесь The latest user agents for Chrome
    https://www.whatismybrowser.com/guides/the-latest-user-agent/chrome
    Возможно, что Вы добавите недостающие проверки для очеренодной версии Chrome.
    Однако, сомневаюсь, что это скрипт сможет надёжно функционировать на стороне сервера.
    Вы просто не имете возможность его протестировать на всех типах клиентских устройств.
    Есть вебсервисы, которые для этого поддерживают БД и обслуживают клиентские запросы.
    Но не бесплатно.
    Есть ещё бесплатные детекторы на JS.

    Вся это затея Вам потребовалась для реализации отзывчивого веб-дизайна (Responsive Web Design).
    Это недешевое удовольстве и его применение может быть оправдано тем, что у Вас разрабатывается
    различный контент для смарфонов, таблетов и РС.

    Однако, ещё необходимо определять orientation: portrait или landscapeдля для мобильных устройств
    и это можно сделать только на стороне клиентат т.е. няльзя обойтись без адаптивноговеб-дизайна (Adaptive Web Design).

    Советую Вам оценить ресурсы и м.б. применть в Вашем проекте только AWD.

    Удачи!
     
    Econaft нравится это.
  4. Econaft

    Econaft Активный пользователь

    С нами с:
    28 июн 2014
    Сообщения:
    89
    Симпатии:
    1
    Хром перестал вообще что-либо понимать.
    Почему хоть Mobile то он не видит?