Conexión JEE Autenticacion mediante JDBC

Se deben de crean las BD para Usuario y Roles


ahora creamos los dos archivos de configuración

Contenido de glassfish-web.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app error-url="">
  <class-loader delegate="true"/>
  <jsp-config>
    <property name="keepgenerated" value="true">
      <description>Keep a copy of the generated servlet class' java code.</description>
    </property>
  </jsp-config>
  <security-role-mapping>
        <role-name>ADMINISTRATOR</role-name>
        <group-name>ADMINISTRATOR</group-name>
    </security-role-mapping>
</glassfish-web-app>


Contenido de web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
    <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
    </context-param>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>faces/index.xhtml</welcome-file>
    </welcome-file-list>
    <security-constraint>
        <display-name>Admin Pages</display-name>
        <web-resource-collection>
            <web-resource-name>Admiistrador</web-resource-name>
            <description/>
            <url-pattern>/faces/admin/*</url-pattern>
        </web-resource-collection>
        <auth-constraint>
            <description/>
            <role-name>ADMINISTRATOR</role-name>
        </auth-constraint>
        <user-data-constraint>
            <description/>
            <transport-guarantee>NONE</transport-guarantee>
        </user-data-constraint>
    </security-constraint>
    <login-config>
        <auth-method>FORM</auth-method>
        <realm-name>JDBCRealm</realm-name>
        <form-login-config>
            <form-login-page>/login.xhtml</form-login-page>
            <form-error-page>/loginerror.xhtml</form-error-page>
        </form-login-config>
    </login-config>
    <security-role>
        <description/>
        <role-name>ADMINISTRATOR</role-name>
    </security-role>
</web-app>

Tenemos creado dos paginas una de Login.xhtml y la otra de LoginError.xhtml estas con el fin de re diseccionar a un ambiente mas atractivo para el usuario, al igual que en el loginerror se puede brindar link de re direccionamiento a la aplicación inicial.
login.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!--
Carlos Ernesto Ruiz Ricaurte
@CarlosCaliche2
Carloscaliche2@gmail.com
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:p="http://primefaces.org/ui" 
      xmlns:h="http://java.sun.com/jsf/html">
    <h:head>
        <title>Login Form</title>
    </h:head>
    <h:body>
        <p:panel header="Login From">
            <form method="POST" action="j_security_check">
                Username: <input type="text" name="j_username" />
                Password: <input type="password" name="j_password" />
                <br />
                <input type="submit" value="Login" />
                <input type="reset" value="Reset" />
            </form> 
        </p:panel>
    </h:body>
</html>


loginerror.xhtml


<?xml version="1.0" encoding="UTF-8"?>
<!--
Carlos Ernesto Ruiz Ricaurte
@CarlosCaliche2
Carloscaliche2@gmail.com
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:p="http://primefaces.org/ui" 
      xmlns:h="http://java.sun.com/jsf/html">
    <h:head>
        <title>Login Error </title>
    </h:head>
    <h:body>
        <p:panel header="Login Error">
            Sorry, you made an Error. <br />Please try again: <a href="#{facesContext.externalContext.requestContextPath}/" >Homepage</a>
        </p:panel>
    </h:body>
</html>


Ahora realizamos la conexión en la consola de Glassfish 4  para ello necesitamos el usuario y contraseña que la encuentras en el servidor de glassfish 

en este caso el servidor se creo sin user ni contraseña.

Ahora creamos la nueva conexión de JDBC dentro de Server-Config



Después se habilita por defecto esta conexión para realizar la autenticación en Default Realm

Conexion PHP a Microsoft SQL Server en Debian/Ubuntu


Como realizar una conexion de base de datos entre PHP 5.2 en Linux Debian/Ubuntu y Microsoft SQL Server database:

1. Instalamos FreeTDS y el PHP MS SQL extension

sudo apt-get install freetds-common freetds-bin unixodbc php5-sybase
Esto es para la extensión de MS SQL que se encuentra en el paquete "php5-sybase"

2. Reiniciamos Apache

sudo /etc/init.d/apache2 restart

3. Probamos la conexion FreeTDS

tsql -H your.server.name -p 1433 -U yourusername -P yourpassword -D yourdatabasename
1> Significa que la conexión fue correcta.

4. Configuramos FreeTDS.conf

sudo vim /etc/freetds/freetds.conf

Agregamos las siguientes lineas en el final del archivo:
[yourserver]
host = your.server.name
port = 1433
tds version = 8.0
El TDS nos ayuda a evitar el error de Unicode si especificamos la version 8.0

5. Probamos FreeTDS usando server name

tsql -S yourserver -U yourusername -P yourpassword -D yourdatabasename

6. Ahora creamos el archivo PHP

$link = mssql_connect('yourserver', 'yourusername', 'yourpassword');
if (!$link) {
die('Unable to connect!');
}
if (!mssql_select_db('yourdatabasename', $link)) {
die('Unable to select database!');
}
$result = mssql_query('SELECT * FROM yourtable');
while ($row = mssql_fetch_array($result)) {
var_dump($row);
}
mssql_free_result($result);

Listo! Terminamos

Fuente:  Link

15 consejos para exprimir el editor de entradas de Blogger

15 consejos para exprimir el editor de entradas de Blogger:
El editor de entradas de Blogger ofrece un gran número opciones orientadas a ayudarte a maquetar cada una de tus publicaciones. Aprendiendo a utilizar de manera correcta cada una de estas opciones, no solo vas a mejorar la presentación de tus entradas sino que además y casi sin darte cuenta, vas a poder mejorar algunos aspectos relacionados con el posicionamiento. 


Te propongo exprimir juntos todas las posibilidades que te ofrece el editor de entradas de Blogger con el fin de sacarle el máximo provecho posible y añadir un plus de calidad a tus nuevas publicaciones.



Consejos para exprimir el editor de entradas de Blogger
Consejos para exprimir el editor de entradas de Blogger


Consejos para mejorar la maquetación de tus publicaciones

1. Estructura la publicación con los estilos de párrafo

Los estilos de párrafo son una forma fácil de estructurar tu publicaciones. Normalmente dentro de un texto tenemos que resaltar los títulos y subtítulos. Para ello usa  el desplegable Formato donde encontrarás estos estilos:
  • Encabezado (h2)
  • Subencabezado (h3)
  • Encabezado secundario (h4)
  • Normal
Un texto con un formato jerárquico y estructurado dice mucho acerca de la organización y calidad del documento frente a otros que no lo utilizan. Es una mala práctica simular un encabezado usando el estilo normal y aplicando un tamaño de letra grande (más información).

2. Aplica correctamente los enlaces, tanto internos como externos

Lo normal con cada publicación es que existan enlaces o hipervículos que inviten a navegar a otras páginas con la finalidad de ofrecer una ampliación de la información. Existen dos escenarios posibles, bien que el enlace apunte a una publicación de tu propio blog o bien que el enlace apunte a una página externa a tu blog. Cuando haces clic en Enlace, el diálogo que se muestra te ofrece estas opciones:
  1. Texto a mostrar: Lo escribes o bien corresponde a una selección de palabras previas.
  2. Enlace: Es la dirección a la que se navegará cuando se hace clic.
  3. Abrir en una ventana nueva: Márcalo siempre que el enlace sea hacia una página externa. 
  4. Añadir el atributo "rel=nofollow": Márcalo siempre que el enlace sea hacia una página externa cuyo contenido no consideres de calidad o del todo fiable (más información).

3. Mejora el procedimiento de inserción de imágenes

Cuando insertas una imagen en una publicación, debes saber que ésta también puede ser indexada y posicionada, con lo cual puedes recibir visitas gracias su visibilidad. Para ello sigue estos consejos:
  • Renombra el archivo: antes de insertarlo en la entrada incluye en su nombre palabras claves separadas por un guión medio. Por ejemplo la imagen que acompaña a este post se llama "editor-online-post-blogger.png".
  • Usa los diferentes tamaños y la alineación que te ofrece Blogger a través de un menú contextual que se muestra cuando haces clic sobre la imagen
  • Añade el texto alternativo (ALT). Es sumamente importante, el texto debe representar el contexto de la imagen.  (más información)

4. Personaliza la url de la publicación mediante el enlace permanente

¿Qué tres elementos muestra el buscador de Google en su página de resultados? Repasamos: el título, la descripción y la url de la publicación. Cuando publicamos una nueva entrada, Blogger genera una URL para dicha publicación de manera automática partiendo el propio título de la entrada. Dentro del editor podemos controlar este aspecto y componer la url utilizando para ello palabras claves separadas por guiones. En el panel de la derecha, haz clic donde pone Enlaces y selecciona Enlace permanente, escribe en la casilla de tres a cinco palabras claves separadas por guiones. Este debes hacerlo siempre antes de publicar (más información)

5. Controla la meta Descripción de búsqueda

La descripción de búsqueda es otro elemento que encontramos en la página de resultados de Google. Normalmente esta descripción se obtiene de manera automática a partir de los contenidos. Sin embargo para aquellos que quieran controlar este aspecto, también pueden hacerlo. Para utilizar esta opción desde el Editor de Blogger deben tener activado la opción Descripción dentro de la Configuración/Preferencias para los motores de búsqueda (más información). Prueba a buscar este mismo post a través de Google y descubre la descripción que lo acompaña. Busca este post a través de Google y descubre la descripción que acompaña a este post.

6. Uso correcto de negritas, cursivas, viñetas y listas numeradas

Cada uno de estos elementos aporta riqueza y añade elementos en el código HTML que pueden ser reconocidos como elementos de calidad, por esto es importante hacer un correcto uso de estas opciones.

7. Utiliza la integración con Google+ para hacer menciones en esa plataforma

Si tienes tu blog vinculado con tu perfil de Google+, podrás mencionar a personas y marcas simplemente escribiendo el signo + seguido del nombre. Por ejemplo +Blogger  para mencionar la página oficial de Blogger en Google+

Cada vez que alguien comparte tu publicación con sus círculos, se notificará con un mensaje a las personas mencionadas en el post (más información).

8. Salto de página, ideal para no mostrarla publicación completa en la vista inicial del blog

Es sumamente útil cuando no quieres mostrar todo el contenido de tu post en la vista inicial del blog. Para usarlo, sitúa el curso justo donde quieres insertar el salto y haz clic en el botón correspondiente de la barra de herramientas (más información).

9. Revisa la ortografía pulsado el botón ABC situado a la derecha de la barra de herramientas

Más que recomendable antes de publicar el contenido. Resalta en amarillo aquellas palabras que no están correctamente escritas y al situarte encima te ofrece opciones

10. Eliminar el formato, útil en determinados casos

El botón Tx, situado a la derecha elimina cualquier formato aplicado al texto seleccionado. Es muy útil si traes texto que proviene de otros editores. Limpia el HTML y deja el texto listo para comenzar a darle formato.

11. Utiliza las etiquetas para clasificar tus post

Las etiquetas te van a permitir ayudar a clasificar la información que publicas en tu blog y es precisamente a través de éstas como tus lectores encontrarán más fácilmente lo que buscan. Recuerda siempre añadirlas con cada publicación desde el panel situado a la derecha. (más información)

12. Asigna una ubicación (Mapa) relacionado con el post

Muy útil por ejemplo para blogs de viajes. Si quieres especificar la ubicación asociada al post debes tener activado la casilla Ubicación en la pestaña Diseño y en el Gadget de Entradas del blog. (más información en iniciaBlog

13. Decide si vas a permitir comentarios en la entrada

Puedes controlar fácilmente si permites o no comentarios en cada entrada. Para ello tienes en el panel lateral un apartado de Opciones desde donde puedes controlar este aspecto por cada una de tus publicaciones.

14. Vínculos a archivos mp3 para crear postcast, ideal para audioblogs

Ideal para aquellos blogs con publicaciones basadas en audio, programas de radio, por ejemplo. Puedes vincular uno o varios archivos mp3 a tu publicación y obtener un Feed tipo postcast. Para activar esta propiedad en el panel de la derecha del editor, deber ir a "Configuración/Otros" y marcar Activar enlaces al título y enlaces a adjuntos (más información, en inglés)

15. Usa la programación para la publicación automática de la entrada en el día y hora que señales

Este aspecto es muy interesante y te permitirá programar qué día y a qué hora se publica tu artículo automáticamente. Es ideal para cuando tenemos previsto un viaje o nos ausentarnos durante unos días, podemos maquetar varias entradas y que éstas se publiquen automáticamente en unas determinadas fechas.

Conclusión

Para finalizar, comentar que el editor de Blogger es realmente una herramienta sumamente potente, se basa en la tecnología WYSIWYG que puede traducirse como "lo que ves es lo que obtienes". Es decir, a partir del resultado final que queremos dar a nuestra publicación, Blogger genera en lenguaje HTML el equivalente, sin que para ello tengamos que ser expertos en la materia. Cada botón de la barra de herramientas de Blogger tiene un equivalente en lenguaje HTML. Para ver este código solo tienes que pulsar el botón HTML situado en la parte superior izquierda. 


Tus lectores sabrán apreciar una buena maquetación, ahora solo depende de ti poner en práctica lo aprendido en este artículo. 


Escrito por +Jesús González, autor de iniciaBlog.com,  en colaboración con el Blog de productos de Google en español 

Guia Como Instalar Ubuntu Phone Developer Preview en dispositivos Nexus

Guia Como Instalar Ubuntu Phone Developer Preview en dispositivos Nexus:


Ya es posible instalar Ubuntu en nuestros dispositivos Nexus. Si quieres probar que te parece el nuevo software en desarrollo de Canonical sigue el tutorial más abajo







La llegada de Ubuntu Phone ha sido uno de los grandes sucesos recientes en materia de tecnología móvil, y ya es posible instalar una versión Developer Preview para tener una idea de como está avanzando el desarrollo de este nuevo sistema operativo. Si tienes un dispositivo Nexus y quieres instalarlo no puedes perderte este post!



Instalar Ubuntu Phone Developer Preview



Desde AndroidZone no nos hacemos responsables por cualquier daño que le pueda ocurrir a tu dispositivo durante el proceso de instalación. Actúa bajo tu propia responsabilidad. Todos los datos de tu dispositivo serán borrados por lo que es recomendable hacer un backup de tus datos previamente.



Cabe destacar que para instalar Ubuntu Phone Developer Preview debes tener uno de los siguientes dispositivos:





  • Galaxy Nexus (takju or yakju)
  • Nexus 4 (occam)
  • Nexus 7 (nakasi or nakasig)
  • Nexus 10 (mantaray)




También necesitas un ordenador  basado en Linux (preferiblemente Ubuntu) para el proceso de instalación.



1 – Primero debes  instalar Ubuntu Touch Preview Tools PPA en tu ordenador. En Terminal ejecuta los siguientes comandos:





  • sudo add-apt-repository ppa:phablet-team/tools
  • sudo apt-get update
  • sudo apt-get install phablet-tools android-tools-adb android-tools-fastboot




NOTA: si tienes el bootloader desbloqueado salta al paso 5



2 – Bootea tu dispositivo Nexus en modo bootloader y conectalo al ordenador por el cable USB.



3 – En el ordenador abre una nueva ventana de Terminal y escribe el siguiente comando:





  • sudo fastboot oem unlock




4 – Acepta los términos y condiciones de desbloqueo en la pantalla del dispositivo. Reinicia una vez terminado.



5 – Bootea el dispositivo y habilita la depuración USB; luego conecta el dispositivo de nuevo al ordenador mediante el cable USB.



6 – Aquí es donde realmente flashearemos la imagen de Ubuntu Touch al dispositivo. Como dije anteriormente en el post, haz un backup de todos tus datos importantes.



Asumiendo que todo ha salido bien y has seguidos las instrucciones entonces podremos seguir. Con el dispositivo conectado a la PC con el cable USB, ejecute el siguiente comando en el Terminal:





  • phablet-flash –b




Esto realizará un full bootstrap en el dispositivo, flashea el último biuld de Ubuntu Touch y luego reinicia, tras lo cual tu dispositivo Nexus debería bootear en Ubuntu Unity Shell.



7 – Listo! Si todo salió bien ya tendrás Ubuntu Touch Developer Preview en tu Nexus. Para más información técnica te recomiendo que visites el siguiente sitio

Conectar Joomla 3 con tus aplicaciones.

Bueno, realizando un análisis de como trabaja joomla y tratando de recuperar las opciones de validar si un usuario se encuentra Validado en Joomla para poder acceder así a tus aplicaciones php.

1. Para esto comenzamos a crear un archivo en nuestra raíz de la pagina. ecojoom3.php

// Código tomado del index.php de Joomla 3
define('_JEXEC', 1);
define('JPATH_BASE', 
dirname(__FILE__) );
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
$mainframe =& JFactory::getApplication('site'); 

//ahora realizamos la validación de si Existe validado un Usuario en Joomla

if (JFactory::getUser()->username == NULL)
{
echo"Error";
exit;
}

//ya cargada la classe de User ahora podes también saber su Usernam, Nombre e id.

$user = JFactory::getUser();

/*
$user->username;
$user->ame;
$user->id;
*/

Como podes ver el código parte de la misma validación del Index de Joomla 3 para lo que tomamos el sistema de lanzamiento de las clases que necesitamos para validar a nuestro usuario.

y listo en tus paginas de aplicaciones php solamente deberas de colocar este encabezadoç
Advertencia: No colocar ningun codigo antes de esto:

 
require_once('ecojoom3.php');

Bueno espero que les sea de utilidad...

Tutorial paso a paso para ejecutar Android en tu ordenador

Tutorial paso a paso para ejecutar Android en tu ordenador:
Cuantas veces hemos oído eso de que Android es un SO libre, con el que puedes hacer lo que te de la gana (siempre y cuando sepas algo del tema, por supuesto).
Vale que el termino Free (en inglés) tiende a crear ciestra confusión y más de una discusión, pero la facilidad que da Google para acceder al código de Android es más que conocida. A la que sacan una nueva versión, casi al instante está disponible para cualquiera, de forma que puede hacer sus modificaciones, arreglos o simplemente curiosear.
Pues bien, eso tiene sus ventajas, como por ejemplo poder ejecutar Android en casi cualquier dispositivo y poder probar y ver de primera mano como es este SO en caso de que nunca lo hayan usado. Y hoy os vamos a enseñar como ejecutarlo en un ordenador, de forma que podáis trastearlo o hacer con él lo que os apetezca.

Paso a paso

Empezamos pues con este tutorial sobre como ejecutar Android en nuestro ordenador. Para ello debemos hacer uso de una máquina virtual; en este caso hemos usado VirtualBox, que podéis descargar desde este enlace, y está disponible para Linux, Windows o Mac.
Necesitaremos también, obviamente, la imagen de Android que queremos instalar. Gracias a la comunidad de usuarios, tenemos disponible una complicación adaptada para casi cualquier dispositivo con arquitectura x86, por lo que podremos instalarlo directamente en el PC si así lo deseamos, y ha sido modificada para que sea compatible con muchísimos dispositivos, teniendo ISO’s específicas para los Asus eeePC, samsung, etc.
Para ello podemos bajarnos la versión que deseemos tanto desde aquí, como aquí. En este tutorial hemos probado 2 versiones, la 2.3 y la 4.0. La primera está mucho más depurada y es más funcional, mientras que la segunda aún está en desarrollo y no funciona del todo bien. Decir que se ha usado la versión adaptada para los eeePC de Asus, ya que la genérica ha dado algún que otro problema, sobretodo con la 4.0.
Una vez tenemos todo a punto, VirtualBox instalado e ISO descargada, vamos al lío. Arrancamos la máquina virtual y lo primero que debemos hacer es crear un “disco” virtual en el cual instalaremos el SO. Es tan sencillo como darle al botón Nueva que encontraremos en la parte superior de la ventana.
 Se abrirá una nueva ventana donde nos irá preguntando varias opciones. Lo primero es elegir un nombre para nuestra máquina virtual y seleccionar el tipo de SO. En este caso lo llamaremos Android (por ejemplo) y seleccionamos Linux y en el tipo Otro (aunque en la imágen aparezca Ubuntu, debéis seleccionar Otro).

El siguiente paso es asignar una cantidad de memoria RAM que queremos dedicar a dicha máquina. Aquí lo recomendable para que funcione mínimamente bien es darle 1Gb. He probado con 512 y si bien con 2.3 se puede usar, con 4.0 es imposible. Aunque yo recomiendo darle 2Gb para asegurar.

Lo próximo es elegir si creamos un disco nuevo o uno existente; elegimos nuevo, el tipo seleccionamos VDI y el espacio yo siempre lo elijo reservado dinámicamente, pero es indiferente elegir la otra opción. Por último debemos determinar el tamaño del disco, que con darle 1 o 2 Gb hay de sobra. Ya solo falta pulsar en “Crear” para terminar el proceso.
  
Vale, ya tenemos nuestro disco creado y casi listo, solo nos faltan unos pequeños detalles. Seleccionamos nuestro nuevo SO y entramos a la configuración. Una vez allí, vamos a Sistema y en la pestaña procesador activamos la casilla PAE/NX, y en almecenamiento, veremos que tenemos 2 “soportes”. Uno es el disco en si, y el otro el CD/DVD que supuestamente usaremos para instalar el sistema. Al tener una imagen, le indicaremos que arranque desde ahí y no desde el lector. Para ello seleccionamos el disco, y en la parte derecha veremos un pequeño icono de un CD. Lo pulsamos y nos dará opción de elegir donde está ubicada nuestra ISO, así que la buscamos, la seleccionamos y listo. Ahora sí que podemos empezar la instalación.
  
Le damos a Iniciar y veremos como se nos abre una nueva ventana y a su vez nos saltan varios mensajes. Básicamente nos informa sobre la resolución de la pantalla y de que el ratón puede quedar “bloqueado” dentro de la ventana. Marcamos que no nos recuerde más esos mensajes y listo. Para probar Android, seleccionamos la primera opción y pulsamos intro; veremos como empieza a cargar y en pocos segundos ya tendremos funcionando Android en nuestro PC.
  
Ahora ya solo falta trastear lo que queráis para probarlo. Sólo una cosa, usando la versión 2.3 no he tenido ningún problema para conectarme a Internet y acceder a casi todos los ajustes sin complicaciones, aunque con 4.0, al estar aún en “pruebas”, en mi ordenador no he podido activar el WiFi, pero si alguno de vosotros dispone de un eeePC de Asus teóricamente debería funcionarle todo, pues ha sido adaptado a ese hardware. Aquí tenéis unas cuantas imágenes de 2.3 funcionando:
  
  
Os recomiendo que probéis primero la genérica y si tenéis problemas probad con la versión de eeePC, que a mi me ha ido perfecta.
Y ahora unas cuantas imágenes de 4.0 funcionando:
  
  
  
Como nota final, decir que el ratón funciona a modo de “dedo” de verdad. Es decir, si mantenemos pulsado el botón izquierdo sale el menú emergente, y en cuanto a los botones de menú y atrás para la versión 2.3, el botón derecho hace la función de atrás, mientas que el botón central (el de la rueda del ratón) hace la función de menú.
Si tenéis problemas para integrar el ratón dentro de la ventana, id a las opciones de VirtualBox, concretamente en el menú “máquina“, y activad la opción de “Inhabilitar integración del ratón“. Ahora, pasad por encima de la ventana y pulsad el botón izquierdo, por ejemplo; de esta manera se quedará dentro de la ventana. Para poder sacarlo, hay que pulsar la tecla Ctrl derecho y listo.
Espero que os haya servido este tutorial y que podáis probar, los que aún no lo habéis hecho, Android 4.0 o, porque no, cualquier versión de Android. Así podéis comparar la evolución que han ido teniendo las diferentes evoluciones y, vistas así juntas, no ha sido poca.

Seguramente también te interesará...