Si no es así visita este tutorial:
Tutorial
Bien ahora vamos a hablar claro,el desarrollo de apps para android se puede hacer en muchos lenguajes de programación desde su lenguaje nativo,en C,C++ en scripting con lenguajes no compilados,android ofrece esta característica a los desarrolladores profesionales o a los aficionados autodidactas como yo,esto se puede integrar a un desarrollo muy bueno,para crear una app muy buena,pero, que pasa con el scripting?
Como funciona el scripting en android?
El scripting en Android funciona gracias a SL4a (Scripting Layer for Android) SL4a usa Android Facades para exponernos las API's disponibles,esto hace que sea el lenguaje de scripting que sea nos brinda el mismo set de API's
Que son las API's?
API (del inglés Application Programming Interface) es el conjunto de funciones y procedimientos en la programación orientada a objetos, que ofrece cierta biblioteca para ser utilizado por otro software como una capa de abstracción.
Osea que en otras palabras podemos programar algo con el set de API's que nos ofrecen,en otras palabras no tendremos el mismo resultado que si programamos en Java
Asi es como funciona una app de Android con SL4a
Bien aqui un ejemplo
Programa de encuesta para Android escrita en python hecho por cristalab.com
Este programa lo que hace es Abrir una Alerta y preguntar algo y la respuesta se efectúa con botones ,luego con una estructura selectiva muestra una alerta para cada boton:
import android
droid = android.Android()
crear_alerta = droid.dialogCreateAlert('Encuesta','Te gusta http://rootcodes.com?')
boton_no = droid.dialogSetNegativeButtonText('No me gusta')
boton_si = droid.dialogSetPositiveButtonText('Si, me gusta')
boton_cancelar = droid.dialogSetNeutralButtonText('Yo no voto!')
droid.dialogShow()
respuesta = droid.dialogGetResponse().result
if respuesta['which']=='positive':
droid.dialogCreateAlert('Gracias por tu voto','Me alegra que te guste!')
elif respuesta['which']=='negative':
droid.dialogCreateAlert('Gracias por tu voto','Una lastima que no te guste!')
else:
droid.dialogCreateAlert('Gracias por tu voto','Un voto nulo :\\')
droid.dialogShow()
Mas info en cristalab.com
Como también se python traduje ese algoritmo a perl y luce así(cambie el texto y añadí unos botones) pero hace lo mismo.
use Android;
my $droid = Android->new();
$droid->dialogCreateAlert("Encuesta", "Te gusta perl");
$droid->dialogSetNegativeButtonText("No me gusta");
$droid->dialogSetPositiveButtonText("Si me gusta");
$droid->dialogSetNeutralButtonText("Yo no Voto!!");
$droid->dialogShow();
my $respuesta = $droid->dialogGetResponse->{'result'};
my $which = $respuesta->{'which'};
if($which =~ m/positive/) {
$droid->dialogCreateAlert(' Gracias', 'Por tu respuesta');
$droid->dialogSetPositiveButtonText("Salir");
}
elsif($which =~ m/negative/) {
$droid->dialogCreateAlert(' Que mal', 'Gracias por tu respuesta');
$droid->dialogSetPositiveButtonText("oK");
}
elsif ($which =~ m/neutral/) {
$droid->dialogCreateAlert(' Gracias', 'Tal vez luego');
$droid->dialogSetPositiveButtonText("oK");
}
$droid->dialogShow()
Lo explico:
my $droid = Android->new(); # Nueva estructura
$droid->dialogCreateAlert("Encuesta", "Te gusta perl"); # Crea Alerta
$droid->dialogSetNegativeButtonText("No me gusta"); # Crea Botón
$droid->dialogSetPositiveButtonText("Si me gusta"); # Otro botón
$droid->dialogSetNeutralButtonText("Yo no Voto!!"); # Y otro botón
$droid->dialogShow(); # Mostramos la alerta
Eso hace esto:
Ahora esto:
my $respuesta = $droid->dialogGetResponse->{'result'};
Comienza después de pulsar un botón.
Esta variable no sera visible,lo que hace es pedir la respuesta,o mejor dicho ver que botón se pulso,la sintaxis ya la hemos visto,solo que aquí usa los argumentos Android.
Esto:
my $which = $respuesta->{'which'};
Tampoco sera visible,lo que hace es limpiar la respuesta a positive,negative o neutral y guardarlo en una variable ($which).
Y por ultimo:
if($which =~ m/positive/) {
$droid->dialogCreateAlert(' Gracias', 'Por tu respuesta');
$droid->dialogSetPositiveButtonText("Salir");
}
elsif($which =~ m/negative/) {
$droid->dialogCreateAlert(' Que mal', 'Gracias por tu respuesta');
$droid->dialogSetPositiveButtonText("oK");
}
elsif ($which =~ m/neutral/) {
$droid->dialogCreateAlert(' Gracias', 'Tal vez luego');
$droid->dialogSetPositiveButtonText("oK");
}
$droid->dialogShow()
$which =~ m/negative/
Al final if :
if($which =~ m/positive/) {
$droid->dialogCreateAlert(' Gracias', 'Por tu respuesta');
$droid->dialogSetPositiveButtonText("Salir");
}
hará esto:
El primer elsif :
elsif($which =~ m/negative/) {
$droid->dialogCreateAlert(' Que mal', 'Gracias por tu respuesta');
$droid->dialogSetPositiveButtonText("oK");
}
Esto:
Y el segundo elsif:
elsif ($which =~ m/neutral/) {
$droid->dialogCreateAlert(' Gracias', 'Tal vez luego');
$droid->dialogSetPositiveButtonText("oK");
}
Esto:
Cabe mencionar que esta forma de programación se hace desde el móvil y es algo molesto, pero pueden hacerlo desde la pc,solo metan el script en la carpeta sl4a/scripts de su memoria del movil
Y checen la API
Es muy buen set
Eso es todo :D
No hay comentarios.:
Publicar un comentario
Los comentarios serán revisados antes de ser publicados.