<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>República I.T. &#187; asp</title>
	<atom:link href="http://www.republicait.com/tags/asp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.republicait.com</link>
	<description>Progamación, Tecnología y mucho más...</description>
	<lastBuildDate>Thu, 20 May 2010 20:22:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Detectar Acceso Móvil con ASP</title>
		<link>http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/</link>
		<comments>http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/#comments</comments>
		<pubDate>Tue, 10 Nov 2009 21:44:36 +0000</pubDate>
		<dc:creator>dcamargo.n</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[asp]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[móvil]]></category>

		<guid isPermaLink="false">http://www.republicait.com/?p=296</guid>
		<description><![CDATA[Este es un pequeño artículo de como detectar si se esta accediendo desde un dispositivo movil con un script ASP. La idea general es poder utilizar el script desde cualquier servidor que soporte la ejecucion de paginas ASP y/o ASP .Net.]]></description>
			<content:encoded><![CDATA[<h3>Introducción</h3>
<p>Este es un pequeño artículo de como detectar si se esta accediendo desde un dispositivo movil con un script ASP. La idea general es poder utilizar el script desde cualquier servidor que soporte la ejecucion de paginas ASP y/o ASP .Net.</p>
<blockquote><p><strong>Nota:</strong> Este script esta basado en: <a href="http://www.codeproject.com/KB/aspnet/mobiledetect.aspx" target="_blank">http://www.codeproject.com/KB/aspnet/mobiledetect.aspx</a></p>
<p>A diferencia del script original, este script remueve la verificación por la propiedad IsMobileDevice lo que impide que se ejecute en versiones anteriores del .Net Framework</p></blockquote>
<h3>Script Completo:</h3>
<pre class="brush:csharp">&lt;%@ Page Language="C#" AutoEventWireup="true" ContentType="text/plain" %&gt;
&lt;script type="text/C#" runat="server"&gt;
void Page_Load(object sender, EventArgs e)
{
    // Variable para almacenar el resultado de la deteccion
    bool isMobile = false;

    //Obtenemos el contexto actual
    HttpContext context = HttpContext.Current;

    //Variable que almacena la firma del navegador
    string userAgent = context.Request.ServerVariables["HTTP_USER_AGENT"];

    //Verificamos primero por la variable HTTP_X_WAP_PROFILE
    if (context.Request.ServerVariables["HTTP_X_WAP_PROFILE"] != null)
    {
        isMobile = true;
    }

    //Procedemos a verificar la firma del navegador
    else if (userAgent != null)
    {
        //Lista posible de dispositivos
        string[] mobiles =
        {
            "midp", "j2me", "avant", "docomo",
            "novarra", "palmos", "palmsource",
            "240x320", "opwv", "chtml",
            "pda", "windows ce", "mmp/",
            "blackberry", "mib/", "symbian",
            "wireless", "nokia", "hand", "mobi",
            "phone", "cdm", "up.b", "audio",
            "SIE-", "SEC-", "samsung", "HTC",
            "mot-", "mitsu", "sagem", "sony"
            , "alcatel", "lg", "eric", "vx",
            "NEC", "philips", "mmm", "xx",
            "panasonic", "sharp", "wap", "sch",
            "rover", "pocket", "benq", "java",
            "pt", "pg", "vox", "amoi",
            "bird", "compal", "kg", "voda",
            "sany", "kdd", "dbt", "sendo",
            "sgh", "gradi", "jb", "dddi",
            "moto", "iphone"
        };

        //Recorremos el arreglo de los dispositivos
        // y verificamos vs la firma del navegador
        foreach (string mobile in mobiles)
        {
            if (userAgent.ToLower().IndexOf(mobile.ToLower()) != -1)
            {
                isMobile = true;
                break;
            }
        }
    }
    //Imprimimos el resultado
    Response.Write("UserAgent: " + userAgent.ToLower() + "\n");
    Response.Write("IsMobile: " + isMobile + "\n");
    Response.Write(".Net Framework: "+Environment.Version.ToString());
}
&lt;/script&gt;</pre>
<p><strong>Muestra de la salida obtenida</strong></p>
<p><code>UserAgent: mozilla/5.0 (windows; u; windows nt 6.1; es-es; rv:1.9.1.5) gecko/20091102 firefox/3.5.5 (.net clr 3.5.30729)<br />
IsMobile: False<br />
.Net Framework: 2.0.50727.4927</code></p>
<blockquote><p><strong>Nota:</strong> En este ejemplo utilize el metodo indexOf para comprobar el userAgent vs el dispositivo, como sugerencia, se puede utilizar expresiones regulares para hacer el script mas completo.</p></blockquote>
Términos de búsqueda<ul><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar navegador movil asp">detectar navegador movil asp</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar dispositivo movil asp">detectar dispositivo movil asp</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar si un navegador es movil o no">detectar si un navegador es movil o no</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar dispositivo movil c#">detectar dispositivo movil c#</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar movil asp">detectar movil asp</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="asp detectar navegador movil">asp detectar navegador movil</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar acceso desde movil">detectar acceso desde movil</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="aspx detectar navegador movil">aspx detectar navegador movil</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="detectar movil symfony">detectar movil symfony</a></li><li><a href="http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/" title="asp detectar dispositivos moviles">asp detectar dispositivos moviles</a></li></ul><!-- SEO SearchTerms Tagging 2 plugin took 3.455 ms -->]]></content:encoded>
			<wfw:commentRss>http://www.republicait.com/2009/11/10/detectar-acceso-movil-asp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
