Estoy usando un agente de usuario para distinguir si el navegador está en un dispositivo móvil o de escritorio. Sin embargo, si cambio la configuración al modo PC en el navegador de Android, el valor del agente de usuario cambia a "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, como Gecko) Chrome/95.0.4638.74 Safari/537.36 " .
Para que quede claro, apliqué navigator.maxTouchPoints > 0 para confirmar si se trata de un entorno móvil. pero Chrome en el escritorio muestra que el valor de navigator.maxTouchPoints es 10 . Me pregunto por qué sale así. ¿Hay alguna otra forma de juzgar los dispositivos móviles?
maxTouchPoints mostraría un número mayor que cero si la computadora de escritorio o portátil tiene una pantalla táctil.
Debe probar las funciones que desea usar o no usar en el móvil. El uso de userAgent puede volverse cauteloso, ya que se puede cambiar fácilmente y lo que vio es un truco común que se usa para forzar el modo de escritorio.
También tenga en cuenta que, en particular, Chrome está buscando 'reducir' la cadena de agente de usuario para evitar una especie de huella digital. Reducción de agente de usuario
Puede consultar esta respuesta de una pregunta similar para obtener sugerencias: ¿Cuál es la mejor manera de detectar un dispositivo móvil?