Consejo rápido detecte el navegador y el agente de usuario con AS3

Siga este consejo rápido para aprender a detectar el navegador de Internet y el agente de usuario con AS3 y Flash.


Paso 1: Breve descripción

Usaremos TextFields y la ayuda de ExternalInterface para recuperar el agente de usuario, a través de una llamada de JavaScript, y mostrarlo en nuestro SWF. Con el agente de usuario almacenado, una búsqueda simple a través de la cadena devuelta nos dará el navegador de Internet.


Paso 2: configura tu archivo flash

Inicie Flash y cree un nuevo documento de Flash, establezca el tamaño del escenario en 400x200px y la velocidad de fotogramas en 24 fps.


Paso 3: Interfaz

Esta es la interfaz que usaremos, consulte la imagen de arriba para ver los nombres de las instancias. Recreate tu mismo o simplemente usa la Source FLA.


Paso 4: ActionScript

Cree una nueva clase de ActionScript (Cmd + N), guarde el archivo como Main.as y empieza a escribir:

 paquete import flash.display.Sprite; importar flash.external.ExternalInterface; import flash.events.MouseEvent; importar fl.transitions.Tween; clase pública principal extiende Sprite private var userAgent: String; función pública Main (): void more.addEventListener (MouseEvent.MOUSE_UP, showFull); browserTxt.text = getUserAgent (); letterpress.text = getUserAgent ();  función privada getUserAgent (): String try userAgent = ExternalInterface.call ("window.navigator.userAgent.toString"); var browser: String = "[Unknown Browser]"; if (userAgent.indexOf ("Safari")! = -1) browser = "Safari";  if (userAgent.indexOf ("Firefox")! = -1) browser = "Firefox";  if (userAgent.indexOf ("Chrome")! = -1) browser = "Chrome";  if (userAgent.indexOf ("MSIE")! = -1) browser = "Internet Explorer";  if (userAgent.indexOf ("Opera")! = -1) browser = "Opera";  catch (e: Error) // no se pudo acceder a ExternalInterface en la página que contiene el retorno "[No ExternalInterface]";  navegador de retorno;  función privada showFull (e: MouseEvent): void info.fullInfo.text = userAgent; var tween: Tween = new Tween (info, "y", null, info.y, 180,0.5, true); 

Un Interfaz externa llamar a una función de JavaScript obtendrá la Agente de usuario cadena y utilizar el índice de() método para buscar el ID de cada navegador dentro de esa cadena; Si la cadena de User Agent contiene el nombre del navegador que está buscando, puede asumir que es el navegador que el usuario está usando. Puede agregar un navegador específico en esta área. los Más botón animará el info Panel al escenario y revelar la información completa del agente de usuario.

Si el Interfaz externa la llamada falla, la instrucción try-catch detectará esto y devolverá un simple mensaje de error al cuadro de texto. Puede fallar si el SWF se está ejecutando en Flash Player independiente, o si la página web que contiene prohíbe su uso.


Paso 5: Clase de documento

Recuerde agregar el nombre de la clase a la Clase campo en el Publicar sección de la Propiedades panel.


Paso 6: Publicar

Para ver el SWF en acción (puede dar errores al realizar pruebas en el IDE), debe abrir el archivo en el navegador, puede presionar Mayús + Cmd + F12 (Archivo | Publicar) para publicar un archivo HTML y luego abrirlo, o arrastre el SWF desde la carpeta de su proyecto al navegador para ver cómo funciona el archivo.


Conclusión

Puede realizar cambios específicos en su aplicación según los datos del navegador y del Agente de usuario obtenidos.

Ten cuidado con esto; el uso de la cadena de agente de usuario no se considera confiable, ya que los usuarios pueden alterar el contenido de esta cadena de varias maneras. Algunos navegadores incluso tienen una característica que les permite enmascararse como otros navegadores cambiando su propia cadena de agente de usuario. Sería imprudente bloquear al usuario fuera de un sitio (o dejarlo solo en un sitio) basándose solo en la cadena de agente de usuario.

Espero que les haya gustado este Consejo rápido, gracias por leer.!