[C#] Asp.net में मोबाइल डिवाइस का पता लगाने


Answers

स्कॉट Hanselman विषय पर एक महान ब्लॉग पोस्ट है वह एक तृतीय पक्ष समाधान को संदर्भित करता है जिसे 51 डिग्री कहा जाता है।

Question

निम्नलिखित एक मोबाइल डिवाइस का पता लगाने वाला कोड है जिसमें तीन भिन्न स्थितियों शामिल हैं

if (Request.Browser.IsMobileDevice)
{
   //Do Something
}
else if (((System.Web.Configuration.HttpCapabilitiesBase)myBrowserCaps).IsMobileDevice)
{
  //Do Something
}
else if (IsMobileDevice(mobileDevices))
{
  //Do Something
}

public bool IsMobileDevice()
{
     private static string[] mobileDevices = new string[] {"iphone","ppc"
                                                   "windows ce","blackberry",
                                                   "opera mini","mobile","palm"
                                                   "portable","opera mobi" };

         string userAgent = Request.UserAgent.ToString().ToLower();
         return mobileDevices.Any(x => userAgent.Contains(x));
 }

मुझे तीन शर्तों को लिखना पड़ता था क्योंकि वे कुछ उपकरणों के लिए असफल रहे हैं, क्या कोई बेहतर दृष्टिकोण सुझा सकता है?




मैं web.config में उपयोगकर्ता एजेंटों की सूची को कॉन्फ़िगर करना आसान बनाने का सुझाव देता हूं। IsMobileDevice सक्रिय रूप से नए ब्राउज़रों के साथ अपडेट नहीं किया जाता है इसलिए इसकी इसकी सीमाएं हैं, इसलिए आपको और जांच की आवश्यकता है।

51Degrees.mobi पैकेज एक और विश्वसनीय विकल्प होगा।




वैसे हां, अगर आप यह सुनिश्चित करना चाहते हैं कि उपयोगकर्ता अभ्यर्थी शायद सबसे अच्छा तरीका है आप इस विधि को भी देख सकते हैं:

http://msdn.microsoft.com/en-us/library/system.web.configuration.httpcapabilitiesbase.ismobiledevice.aspx

इसमें नए ब्राउज़रों के साथ कुछ समस्याएं होनी चाहिए और ऐसे में लेकिन यह वर्तमान में आप के जैसा है