2008-08-16 29 views
6

Asp.net projemde bir mobil web formu ekledim, sadece mobil kullananlar için görülebileceğini/görebildiğini düşünmüştüm, ancak bunun aynı zamanda herhangi bir tarayıcı, ben orada sorun görmüyorum HttpBrowserCapabilities.IsMobileDevice = true kullanarak ve doğru aspx sayfasına aktarımı kullanarak erişim farklı olabilir, ancak mobil aygıtımdan web formuna eriştiğimde IsMobileDevice olarak tanımlanır = false ve beni başka bir sayfaya gönderir.Mobil cihaz, mobil olmayan cihaz olarak algılandı

Bu nasıl mümkün olabilir? UserAgent ile haberci edilmiş veya yeni bir tarayıcı kullanıldığı için

mobil cihaz, Pocket PC 2003.

cevap

2

Bazı tanınmaz çalışır. Opera Mobile 9.5 gibi. Bunu düzeltmek için, özellikle bunu tanımlamak için bir Tarayıcı (* .browser) dosyası oluşturmanız gerekir. Google'dan gönderilen yeni Mozilla tabanlı UserAgent için bunu yapmak zorundaydım.

4

IMHO: HttpContext.Current.Request.Headers("User-Agent") değeri aslında cihazın türünü istekte tarayıcıyı gösterir ve değil çok daha güvenli bir bahistir başına se.

Bir akıllı telefon hizmetinize üçüncü taraf bir tarayıcı aracılığıyla bir istekte bulunursa, daha sık olarak "ne tür bir cihazsınız" testinden (HttpCapabilitiesBase.IsMobileDevice ve/veya HttpContext.Current.Request.Browser.IsMobileDevice) başarısız olur.

Ne yazık ki, izin verilen kullanıcı aracılarının büyük bir listesini (veya bu konu için izin verilmeyen kullanıcı aracıları) kısa bir süre önce, Mozilla, iPhone veya Opera ile başlamadan önce başlamadığından emin olmanız gerekir. sayfa ...

İçinde oynamak zor bir arenadır.
İyi şanslar.

1

Diğer DDR'yi Microsoft Tarayıcı Yeteneklerinden daha iyi kullanmanız gerektiğini düşünüyorum. Http://wurfl.sourceforge.net> WURFL kullanıyorum, açık kaynak ve belki daha genişletilmiş ve güncellenmiş. DeviceAtlas gibi başka ticari DDR'ler var.

Bazı .net kitaplıkları var ama ben Marg.Wurfl kullanıyorum. Web mobil sayfasını wurfl yeteneklerini kullanarak oluşturmayı sağlar.

İlgili konular