2011-12-01 11 views
16

Mam Samsung Galaxy S2, w kodzie C# pokazuje Request.Browser.IsMobileDevice = false, ale chcę używać wersji mobilnej dla mojej aplikacji. Jak wyświetlić mobilną wersję mojej strony na urządzenia z systemem Android?Request.Browser.IsMobileDevice = false dla Androida, dlaczego?

Dziękuję, bardzo.

Sergey.

+4

Proszę przeczytać http://stackoverflow.com/questions/1829089/how-does-ismobiledevice-work. – dknaack

+0

Wystarczy dodać 51degrees za pomocą Nuget – Shahdat

Odpowiedz

3

Możesz sprawdzić nagłówek HTTP User-Agent.

User-agent to identyfikator, który (zazwyczaj) zawiera nazwę i wersję przeglądarki, a także nazwę i wersję platformy lub systemu operacyjnego, na którym działa przeglądarka. Obecnym standardem jest podzielenie tego podziału na elementy oddzielone spacjami, ale w rzeczywistości pole User-Agent można ustawić na dowolne.

Przykład:

Mozilla/5.0 Windows NT 6.1 WOW64 rv 8.0 Gecko/20100101 Firefox/8.0 

To pokazuje, że biegnę Firefox 8.0 (który używa Mozilla renderujący Gecko v5.0 i układ zwalniający silnik 2010/01/01) w wersji 64-bitowej wersji systemu Windows NT 6.1 Release (czyli Windows 7).

można uzyskać więcej informacji na temat ciągów agenta użytkownika stąd: http://www.useragentstring.com/

+0

Dziękuję bardzo !!! Uratowałeś mi dzień :) – Sergey

+0

Cieszę się, że mogę pomóc. Powinieneś także przeczytać link dknaack, który zamieścił jako komentarz do twojego pytania. – Polynomial

+0

wygląda bardzo interesująco ... Dziękuję bardzo, znowu – Sergey

2

Używaj 51Degrees.mobi z NuGet za jednym kliknięciem zainstalować z konfiguracji zerowej, która likwiduje ten problem.

+8

Nie ma już opcji. Cóż, jest to opcja, ale nie można uzyskać aktualizacji bez subskrypcji danych premium. Crowdsourcing w najlepszym wydaniu! –

0

Sprawdzanie, czy urządzenie jest urządzeniem Android, jest przydatne.

Nie jest post z kodem: http://dbarrowstechblog.blogspot.hk/2011/02/requestbrowserismobiledevice.html

+1

To nie jest idealne, ponieważ wykryje tablety z Androidem jako mobilne (a na ogół nie chcesz, aby tablety wyświetlały wersję mobilną). Ciągi agenta użytkownika wydają się bardzo często zawierać "tablet", gdy są tabletami, więc sprawdzenie tego również spowoduje poprawienie tego. –

1

można utworzyć plik w App_Browsers z regex do identyfikacji przeglądarki, następujące jeden jest firefox w Androidzie:

<browsers> 
    <!--Mozilla/5.0 (Android 5.0; Mobile; rv:44.0) Gecko/44.0 Firefox/44.0--> 
    <browser id="FirefoxMobile" parentID="firefox3plus"> 
     <identification> 
      <userAgent match="Mozilla.+\(Android.+Mobile.*\)" /> 
     </identification> 
     <capabilities> 
      <capability name="isMobileDevice" value="true" /> 
     </capabilities> 
    </browser> 
</browsers> 
Powiązane problemy