Я потратил немало времени, думая об этом для случая Java, и я считаю, что настоящими причинами являются:
Другими словами, единственный способ указать поле в интерфейсе - это предоставить метод для записи нового значения и метод для считывания текущего значения ,
Эти методы - позорный геттер и сеттер ....
Вы можете использовать библиотеку мобильного обнаружения JS , чтобы сделать это. Обратите внимание на предупреждение:
// WARNING:
// These JavaScript-based device detection features may ONLY work
// for the newest generation of smartphones, such as the iPhone,
// Android and Palm WebOS devices.
// These device detection features may NOT work for older smartphones
// which had poor support for JavaScript, including
// older BlackBerry, PalmOS, and Windows Mobile devices.
// Additionally, because JavaScript support is extremely poor among
// 'feature phones', these features may not work at all on such devices.
// For better results, consider using a server-based version of this code,
// such as Java, APS.NET, PHP, or Ruby.
есть два варианта:
1- Попытка агента пользователя. 2-мобильный детектор JS-библиотеки
Вы просто ответили на свой вопрос - вы либо хотите перейти в браузер пользователя или его ширину устройства.
Если вы хотите что-то сделать, когда ширина меньше WIDTH_CONSTANT, вы используете mediaQueries или проверяете размеры с помощью javascript.
В настоящее время обнюхивание пользовательского агента не рекомендуется на стороне клиента, потому что вместо того, чтобы обнюхивать пользовательский агент, вам нужно искать интересующие вас функции.
Итак, в вашем случае Я почти уверен, что вы должны искать ширину устройства.
PS если вы имеете дело на стороне сервера, я думаю, что обнюхивание useragent было бы единственным способом узнать, что пользователь устройства использует.