Мобильное устройство обнаружено как не мобильное устройство

Я включил мобильную веб-форму в свой проект asp.net, я подумал, что она может / должна быть видна только для моих мобильных пользователей, но я понимаю, что она также может быть видна из любого браузера, я не вижу проблемы там, потому что Я мог бы разграничить доступ с помощью HttpBrowserCapabilities.IsMobileDevice = true и передать на соответствующую страницу aspx, но в результате этого, когда я получаю доступ к веб-форме с моего мобильного устройства, она идентифицируется как IsMobileDevice = false и отправляет меня на другую страницу.

Как это могло быть возможно?

Мобильное устройство работает под управлением Pocket PC 2003.

16.08.2008 16:42:27
3 ОТВЕТА
РЕШЕНИЕ

Некоторые не распознаются, потому что UserAgent был испорчен или используется новый браузер. Таких как Opera Mobile 9.5. Чтобы это исправить, вам нужно создать файл Browser (* .browser) специально для определения этого. Я должен был сделать это для нового UserAgent, основанного на Mozilla, который отправляется из Google.

2
16.08.2008 16:46:28

ИМХО: значение HttpContext.Current.Request.Headers("User-Agent")ставки намного безопаснее, поскольку оно фактически указывает на браузер, который делает запрос, а не на тип устройства как такового .

Из своего опыта я узнал, что если смартфон отправляет запрос через сторонний браузер к вашему сервису, то чаще всего «какой тип устройства вы» проверяете ( HttpCapabilitiesBase.IsMobileDeviceи / или HttpContext.Current.Request.Browser.IsMobileDevice) не пройдете ,

К сожалению, хотя, за исключением большого списка разрешенных пользовательских агентов (или запрещенных пользовательских агентов), вам просто нужно убедиться, что он не запускается с Mozilla, iPhone или Opera, прежде чем рендерить страницу. ,

Это сложная арена для игры.
Удачи.

4
18.08.2008 04:27:17

Я думаю, что вы должны использовать другие DDR лучше, чем возможности браузера Microsoft. Я использую http://wurfl.sourceforge.net> WURFL, это открытый исходный код и, возможно, он более расширен и обновлен. Есть и другие коммерческие DDR, такие как DeviceAtlas .

Существует много библиотек .net, но я использую Marg.Wurfl . Позволяет рендерить мобильную веб-страницу, используя возможности wurfl.

1
25.09.2008 08:37:13