|
|
|
| Можно ли исходя из User Agent определить, что пользователь просматривает сайт с помощью планшета?
(а не телефона и не РС). | |
|
|
|
|
|
|
|
|
для: Sfinks
(14.11.2013 в 08:23)
| | Про WURFL я давно знаю, и у него есть русскоязычное описание http://www.ibm.com/developerworks/ru/library/mo-wurfl-1/
По идее, это идеальное решение всех вопросов, исключающее необходимость классификации устройств. Планшет или телефон - безразлично, есть о нем есть информация, позволяющая правильно вывести страницу.
Однако, не все так просто - для полноты оптимизации необходимо знать физический размер экраны - в дюймах или в миллиметрах. А вот этот параметр мне там найти не удается!
Он вообще-то там есть?
(Геометрический размер экрана). | |
|
|
|
|
|
|
|
для: Владимир55
(14.11.2013 в 14:40)
| | > Он вообще-то там есть? (Геометрический размер экрана).
В принципе есть. Но далеко не для всех устройств и не понятно, в чем измеряется.
Вот например одно из устройств где эти параметры есть:
<device id="samsung_gt_i7500_ver1_subcupcake" user_agent="Mozilla/5.0 (Linux; U; Android 1.5; fr-fr; Galaxy Build/CUPCAKE) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2" fall_back="samsung_gt_i7500_ver1">
<group id="product_info">
<capability name="release_date" value="2009_march"/>
</group>
<group id="display">
<capability name="columns" value="25"/>
<capability name="physical_screen_height" value="65"/>
<capability name="physical_screen_width" value="49"/>
<capability name="max_image_width" value="300"/>
<capability name="rows" value="21"/>
<capability name="resolution_width" value="320"/>
<capability name="resolution_height" value="480"/>
</group>
</device>
|
А вот другое, и не понятно что с этим вообще делать:
<device id="htc_magic_ver1_subht03a_docomo" user_agent="Mozilla/5.0 (Linux; U; Android 1.5; ja-jp; HT-03A Build/CDB72) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1" fall_back="htc_magic_ver1_cupcake">
<group id="product_info">
<capability name="model_name" value="HT-03A"/>
<capability name="model_extra_info" value="DoCoMo"/>
</group>
<group id="xhtml_ui">
<capability name="accept_third_party_cookie" value="false"/>
</group>
</device>
|
Хотя, если продолжить поиск, по значению атрибута fall_back="htc_magic_ver1_cupcake", то можно найти:
<device id="htc_magic_ver1_cupcake" user_agent="Mozilla/5.0 (Linux; U; Android 1.5; en-us; HTC Magic Build/CUPCAKE) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1" fall_back="htc_magic_ver1">
<group id="product_info">
<capability name="uaprof" value="http://www.htcmms.com.tw/Android/Common/HTC_Magic/ua-profile.xml"/>
</group>
<group id="object_download">
<capability name="directdownload_support" value="true"/>
<capability name="oma_support" value="true"/>
</group>
<group id="sound_format">
<capability name="aac" value="true"/>
</group>
</device>
|
И продолжив дальше, fall_back="htc_magic_ver1", уже информации побольше:
<device id="htc_magic_ver1" user_agent="Mozilla/5.0 (Linux; U; Android 1.5; en-us; sapphire; HTC_Magic) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20.1" fall_back="generic_android" actual_device_root="true">
<group id="product_info">
<capability name="has_qwerty_keyboard" value="true"/>
<capability name="device_os" value="Android"/>
<capability name="device_claims_web_support" value="true"/>
<capability name="uaprof" value="http://www.google.com/oha/rdf/ua-profile-kila.xml"/>
<capability name="model_name" value="Magic"/>
<capability name="device_os_version" value="1.5"/>
<capability name="brand_name" value="HTC"/>
<capability name="release_date" value="2009_april"/>
</group>
<group id="wml_ui">
<capability name="table_support" value="true"/>
</group>
<group id="display">
<capability name="physical_screen_height" value="68"/>
<capability name="columns" value="25"/>
<capability name="physical_screen_width" value="46"/>
<capability name="rows" value="21"/>
<capability name="max_image_width" value="315"/>
<capability name="resolution_width" value="320"/>
<capability name="resolution_height" value="480"/>
<capability name="max_image_height" value="460"/>
</group>
<group id="image_format">
<capability name="jpg" value="true"/>
<capability name="gif" value="true"/>
<capability name="png" value="true"/>
<capability name="colors" value="65536"/>
</group>
<group id="mms">
<capability name="mms_png" value="true"/>
<capability name="mms_max_size" value="307200"/>
<capability name="mms_max_width" value="640"/>
<capability name="mms_max_height" value="480"/>
<capability name="mms_gif_static" value="true"/>
<capability name="mms_midi_monophonic" value="true"/>
<capability name="mms_wbmp" value="true"/>
<capability name="mms_amr" value="true"/>
<capability name="mms_jpeg_baseline" value="true"/>
</group>
<group id="sound_format">
<capability name="aac" value="true"/>
<capability name="mp3" value="true"/>
<capability name="amr" value="true"/>
<capability name="midi_monophonic" value="true"/>
<capability name="imelody" value="true"/>
</group>
<group id="pdf">
<capability name="pdf_support" value="false"/>
</group>
<group id="bearer">
<capability name="wifi" value="true"/>
<capability name="max_data_rate" value="1800"/>
</group>
<group id="streaming">
<capability name="streaming_vcodec_h263_0" value="10"/>
<capability name="streaming_acodec_aac" value="ltp"/>
<capability name="streaming_3gpp" value="true"/>
<capability name="streaming_vcodec_h264_bp" value="1"/>
<capability name="streaming_acodec_amr" value="nb"/>
<capability name="streaming_vcodec_mpeg4_sp" value="0"/>
<capability name="streaming_video" value="true"/>
<capability name="streaming_mp4" value="true"/>
</group>
<group id="drm">
<capability name="oma_v_1_0_forwardlock" value="true"/>
</group>
<group id="object_download">
<capability name="directdownload_support" value="true"/>
<capability name="oma_support" value="true"/>
<capability name="video" value="true"/>
</group>
<group id="playback">
<capability name="playback_acodec_aac" value="lc"/>
<capability name="playback_3gpp" value="true"/>
<capability name="playback_mp4" value="true"/>
<capability name="playback_acodec_amr" value="nb"/>
<capability name="playback_vcodec_h263_0" value="10"/>
<capability name="playback_vcodec_mpeg4_sp" value="0"/>
</group>
<group id="xhtml_ui">
<capability name="xhtml_can_embed_video" value="plain"/>
<capability name="xhtml_file_upload" value="supported"/>
</group>
</device>
|
И интересующая нас есть.... Но вот на сколько она соответсятвует действительности, это вопрос.
В принципе, если предположить, что:
<capability name="physical_screen_height" value="68"/>
<capability name="physical_screen_width" value="46"/>
| указаны в миллиметрах, то можно рассчитать:
68*68+46*46= 6740
Извлекаем корень = 82,097 // диагональ в мм
переводим в дюймы: 82,097/25,4= 3,2 // дюйма
|
Открываем описание модели, с которой мы начали поиск: HTC HT-03A, и смотрим:В принципе совпадает.....
Как-то так | |
|
|
|
|
|
|
|
для: Sfinks
(15.11.2013 в 08:50)
| | Геометрические размеры измеряются в миллиметрах и указание на это есть в доках.
Но вообще все не так просто.
Вы обратили внимание на то, что юзер-агенты имеют какой-то неестественный вид? К примеру,
user_agent="DO_NOT_MATCH_GENERIC_MOBILE"
user_agent="DO_NOT_MATCH_MOZILLA"
user_agent="MAUI WAP Browser"
|
Очевидно, что ни один браузер такой инфы не дает.
И даже для конкретных моделей юзер-агенты какие-то уж слишком «причесанные»:
user_agent="SonyEricssonS710a"
user_agent="SonyEricssonK750i/R1B"
|
Как можно предположить, это результат предшествующей логической обработки, которой, вероятно, и занимаются две сотни РНР файлов, имеющихся в дистрибутиве.
Беру для примера конкретный юзер-агент своего смартфина:
Mozilla/5.0 (Linux; Android 4.0.4; Philips W536 Build/IMM76D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19
|
В файле wurfl.xml такого аппарата нет. Соответственно, и в выдаче показывается нечто, не соответствующее действительности…
С планшетом та же история...
А вот юзер-агент какого-то посетитля сайта:
Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A403 Safari/8536.25
|
В файле wurfl.xml его тоже нет, но определяется вполне правдоподобно:
http://wowa55.pz9.ru/wurfl/examples/demo/index.php?ua=Mozilla%2F5.0+%28iPad%3B+CPU+OS+6_0+like+Mac+OS+X%29+AppleWebKit%2F536.26+%28KHTML%2C+like+Gecko%29+Version%2F6.0+Mobile%2F10A403+Safari%2F8536.25 | |
|
|
|
|
|
|
|
для: Владимир55
(14.11.2013 в 01:01)
| | Для чего вам эта информация? Сайты на планшетах выглядят почти также как на PC | |
|
|
|
|
|
|
|
|
для: psychomc
(18.12.2013 в 18:43)
| | В закладки! Это интересно.
2 девайса с почти одинаковыми юзер-агентами, оба на андроид 4, но оно абсолютно верно на первый сказало "phone", на второй "tablet". | |
|
|
|