Beruflich Dokumente
Kultur Dokumente
En este tema, construirs una aplicacin que te permita crear tu propia gua
personalizada para un viaje de ensueo en Pars. Y ya que algunos de sus amigos
posiblemente no vayan, crearemos una aplicacin que les permita hacer un recorrido
virtual de Pars tambin. La creacin de una aplicacin con un mapa completo puede
parecer muy complicado, pero App Inventor 2 le permite utilizar el componente
ActivityStarter con Google Maps para las ubicaciones virtuales que facilitan mucho el
trabajo. En primer lugar, construirs una aplicacin que lanza mapas de la Torre Eiffel,
el Louvre y Notre Dame con un solo clic. A continuacin, podrs modificar la
aplicacin para crear una visita virtual de mapas de satlite disponibles a partir de
Google Maps.
Lo que aprenders
Este tema presenta los siguientes componentes y conceptos de App Inventor:
Propiedad Valor
Action android.intent.action.VIEW
ActivityClass com.google.android.maps.MapsActivity
ActivityPackage com.google.android.apps.maps
En el Editor de Bloques, debers definir una propiedad ms, DataUri, que le permite
lanzar un mapa especfico en Google Maps. Esta propiedad se debe establecer en el
Editor de Bloques en lugar del Diseador de componentes, ya que debe ser dinmica,
que cambiar en funcin de si el usuario decide visitar la Torre Eiffel, el Louvre o la
Francisco Garca Muoz 3
Abra el Editor de Bloques y cree una variable con la lista de los destinos de Pars
utilizando los bloques que figuran en la siguiente tabla.
La variable destinos llamar a la funcin make a lista, en la que se puede conectar los
valores de texto para los tres destinos de su gira, como se muestra en la siguiente
imagen
El propsito del componente ListPicker es el de mostrar una lista de elementos para que
el usuario elija. Se precargar las opciones al ListPicker mediante el establecimiento de
la propiedad Elements to a la lista. Estableceremos en el ListPicker los elementos de la
lista de destinos que acaba de crear. Como se quiere mostrar la lista cuando la
Francisco Garca Muoz 4
A continuacin, podrs programar la aplicacin para que cuando el usuario elija uno de
los destinos, la ActivityStarter lance Google Maps y la bsqueda de la ubicacin
seleccionada.
Puesto que ya has configurado las otras propiedades de la ActivityStarter para abrir
Maps, el bloque ActivityStarter1.StartActivity inicia la aplicacin Maps e invoca la
bsqueda escrita por la DataUri
Ahora vamos a darle vida a la aplicacin y que abra algunas de las magnficas vistas
zoom de la calle y los monumentos de Pars para que sus amigos en casa puedan seguir
adelante mientras que ests ausente. Para ello, primero exploraremos Google Maps para
obtener la URL de algunos mapas especficos. Todava se utilizan los mismos puntos de
referencia de Pars para los destinos, pero cuando el usuario elija uno, se utilizar el
ndice (la posicin en la lista) de su eleccin para seleccionar y abrir un mapa especfico
o zoom a la vista de la calle.
Antes de continuar, es posible que desee guardar el proyecto (utilizando Save del men
Projects) para que tengas una copia de lo que has creado hasta ahora. De esta manera, si
hace alguna cosa que cause problemas en su aplicacin, siempre puede volver a esta
versin del trabajo y volver a intentarlo.
El primer paso es abrir Google Maps en su ordenador para encontrar los mapas
especficos que desea lanzar para cada destino:
Utilizando este esquema, la siguiente tabla muestra las URL que usaremos.
Para ver cualquiera de estos mapas, pegue la URL de la tabla en un navegador. A los
dos primeros se aplica el zoom de imgenes de satlite, mientras que el tercero es una
vista de la calle.
Puede utilizar estas URL directamente para poner en marcha los mapas que desee,
o puede definir la construccin del URL usando los protocolos descritos de Google
Maps en http://alvarestech.com/temp/routeconverter/RouteConverter/navigation-
formats/src/main/doc/googlemaps/Google_Map_Parameters.htm. Por ejemplo, puede
mostrar el mapa de la Torre Eiffel utilizando nicamente las coordenadas del GPS que
se encuentra en la direccin URL larga en la Tabla y la Maps geo: protocolo:
geo:48.857942,2.294748 t = h & z = 19
Haciendo uso de este DataUri, obtendr esencialmente el mismo mapa que el mapa en
funcin de la direccin URL completa de la cual las coordenadas GPS fueron extrados.
Francisco Garca Muoz 7
El t = H especifica que los mapas deben mostrar un mapa hbrido por satlite y vistas
de direcciones, y el z = 19 especifica el nivel de zoom. Si ests interesado en los detalles
de configuracin de los parmetros para los distintos tipos de mapas, echa un vistazo a
la documentacin en
http://alvarestech.com/temp/routeconverter/RouteConverter/navigation-
formats/src/main/doc/googlemaps/Google_Map_Parameters.htm.
Para hacerlo ms interesante utilizaremos los dos tipos de direcciones URL, la geo:
formato para los primeros dos ajustes del DataUri en nuestra lista, y la direccin URL
completa para el tercero.
Necesitars una lista llamada dataURIs, que contiene una DataURI para cada
mapa que desea mostrar. Crea esta lista, como se muestra en la imagen para que los
elementos que se corresponden a los elementos de la lista de destinos (es decir, la
primera dataURI debe corresponder al primer destino, la Torre Eiffel).
Los dos primeros elementos que se muestran son DataURIs de la Torre Eiffel y el
Louvre. Ambos utilizan la geo: protocolo. La tercera DataURI no se muestra del todo
porque el bloque es demasiado largo para esta pgina, tienes que copiar esta URL de la
entrada de "Notre Dame, Street View" de la tabla anterior y ponerlo en un bloque de
texto.
El ndice puede ser utilizado para seleccionar un elemento de otra lista, en este caso
DataUris, y para establecer de la ActivityStarter de DataUri. Una vez configurado, el
mapa se puede iniciar con ActivityStarter.StartActivity.
Variaciones
Resumen
Estas son algunas de las ideas que hemos tratado en este tema:
Las variables de lista se pueden utilizar para almacenar datos como destinos de un
mapa y las direcciones URL.
El componente ListPicker permite al usuario elegir entre una lista de elementos. La
propiedad Elementos de ListPicker contiene la lista, la propiedad Selection ocupa el
elemento seleccionado, y el evento AfterPicking se activa cuando el usuario selecciona
un elemento de la lista.
El componente ActivityStarter permite a su aplicacin para lanzar otras aplicaciones.
En este tema se ha demostrado su uso con la aplicacin Google Maps, pero se puede
lanzar un navegador o cualquier otra aplicacin Android tambin, incluso otra que haya
creado.
Puede acceder a una ruta en particular en Google Maps mediante el establecimiento de
la propiedad DataUri. Puedes encontrar la URI mediante la configuracin de un mapa
en particular en el. Puedes colocar la URI directamente al DataUri de su ActivityStarter,
o construir su propio URI utilizando los protocolos definidos en
http://alvarestech.com/temp/routeconverter/RouteConverter/navigation-
formats/src/main/doc/googlemaps/Google_Map_Parameters.htm.
Puede identificar el ndice de un elemento de la lista con la posicin en la lista de
bloqueo. Con ListPicker, puede utilizar la posicin lista para encontrar el ndice del
elemento que elija el usuario. Esto es importante cuando, como en este tema, necesitas
el ndice para elegir un elemento de una segunda lista, relacionada.
Francisco Garca Muoz 11
Licencia
Paris Map Tour de App Inventor 2, por Francisco Garca Muoz basado en: