Está en la página 1de 55

BASIC4Android

por Juan Antonio Villalpando


mi correo:
juana1991@yahoo.com)
(IES Fco. Romero Vargas - Jerez de la Fra.)
Aqu puedes encontrar la instalacin y configuracin del
programa BASIC4Android para realizar programas para el
Android de los telfonos mviles.

NUEVO!!!: la empresa Anywhere Software lanza al


finales de noviembre de 2013 B4J, algo as como (Basic para
Java, aunque se prefiere denominar B4J) , mediante comandos
parecidos a los de Visual Basic podemos realizar
archivos Java de extensin .jar.
Estos archivos tienen la posibilidad de funcionar en
varios sistemas operativos Windows, Mac, Linux (parece
que no funcionan en Android)... Ver foros.

Puedes echarle un vistazo a mi tutorial que


contiene los mismos ejemplos con los que
comenzamos a aprender Basic4Android...

Tutorial de iniciacin a B4J.

-- Tutorial de iniciacin de
Basic4Android--- Basic4Android se denomina ahora B4A -- Programas de iniciacin:
0.- Instalacin.
0B.- La barra de men de Basic4Android. El IDE.
1.- Teorema de Pitgoras.
2.- Adivina.
3.- Ruleta Rusa.
4.- Tres iguales.
5.- Mover dibujo por la pantalla.
6.- Batiburrillo de preguntas.
7.- Potencia Fiscal.
8.- Chat - PHP
9.- Dados a 7. Botn con imagen.
10.- Tutorial del LINUX en Android
10B.- Rootear el mvil. Desbloquear la tarjeta SIM.
10C.- Algo ms de informacin. FastBoot, vold.fstab,
BusyBox. (solo mencionar programas)
11.- Tiempo del sonido y de la luz. Scroll (SeekBar)
12.- Spinner (ComboBox).
12B.- Ejemplo de RadioButton. Inverso de un nmero.
13.- ToggleButton (Botn con enclavamiento)
14.- Paneles
15.- TabHost (Panel con pestaas). Orientacin
horizontal/vertical de los paneles.
15B.- Ubicacin de los controles segn el tamao de
pantalla. Anchor.
16.- Timer (Temporizador). Pausa.
17.- Estudio de la propiedad Tag
18.- Aadir controles mediante cdigo. Actuar en la

pantalla mediante el botn "MENU"


19.- Mscara
20.- Media Player (Sonido). SoundPool. Streamer.
21.- Cmara (Tomar fotos con la cmara)
21B.- Scroll View (ScrollView con imgenes y
textos). Libreras.
22.- WebView. Navegador Web. Bajar un archivo de la web.
23.- Enviar correos SMTP mediante Gmail. POP3.
24.- Video Player. De Texto a Voz. Reconocedor de voz.
25.- ListView con Scroll. Varios Paneles. Programa de
medicina.
26.- ListView con dos Paneles y varios Layout. Formulario
matemtico.
26B.- List, Type y Map . Programa de acentos.
26C.- CustomListView.
27.- Lotera primitiva. Tablas. Arrays. Aleatorios. Bucles.
28.- Dos Activity.
29.- Bluetooth. Visual Basic controla un Robot LEGO
mediante Bluetooth.
30.- Obtener datos y almacenarlos de una base de
datos MySQL(adaptado de los tutoriales de b4a)
30B.- JSON basado en la base de datos MySQL anterior.
30C.- MySQL con imgenes.
30D.- Comunicarse con una base de datos MySQL con
RDC.
31.- Bar de tapas. Anotaciones del camarero.
32.- Elegir archivos. Librera Dialogs. Listar archivos. Leer,
escribir y guardar.
32B.- InputBox con la Librera Dialogs.
33.- Enviar archivos a un servidor web e imprimirlos.
34.- Arrastrar y soltar View. Drag and Drop.
34B.- Arrastrar y soltar Imagen. TouchImageView.
34C.- Arrastrar y soltar Imagen. PinchZoomAndMove.
35.- Varios Layout, Activity, ListView. Jugadores de ftbol.
36.- Ejecutar otro programa desde un programa que hemos
realizado.
37.- Parar un programa desde otro programa que hemos

realizado. KillProcess.
37B.- Estudio de la Biblioteca OSLibrary. Informacin del
Sistema.
38.- Whatsapp en nuestro ordenador. Whatsapp en el
emulador SDK del Android
39.- Instalar aplicaciones externas en el Emulador.
40.- Crear controles mediante cdigo. Array de controles.
41.- Ejemplo del Focus.
42.- DropBox. Servidor Web.
42B.- DropBox en tu mvil sincronizado con los archivos
de tu ordenador.
43.- Servicios.
44.- KeyCode. Detectar la tecla pulsada. Dilogo de salida.
Notificaciones.
45.- Estudio de la Biblioteca Phone. Enviar SMS, email y
llamadas. Sensores. Ver IP.
45B.- Phone. Sensores. Acelermetro. Orientacin.
Magnetismo. Proximidad.
46.- Try - Catch. Probar un algoritmo.
47.- Tiro parablico. Controles sin Layout, arrastrar y
soltar, frmulas.
48.- Rebote de bola. Movimiento horizontal de fondo.
49.- Subir nuestra aplicacin al Play de Google (Market).
AppToMarket.
50.- Quiniela. Controles con arrays.
51.- Funciones de cadenas. String. Mdulos. Funciones.
Pronto...
52.- Mapas estticos de Google. Mapas dinmicos.
Nmeros aleatorios.
52B.- Mapas de Google y archivos. Street View.
52C.- Mapas de Google con marcas. Internet.
52D.- Mapas de Google. API. Tutorial traducido de los
foros.
53E.- Mapa de Google, coordenadas, marcas, texto e
internet. RECOMENDADO.
53.- Sito web local. Localizacin de archivos y directorios.

54.- Lector de pdf. Localizador de archivos.


54B.- Escritor de pdf. Crear archivos PDF.
55.- Intent. Comunicacin entre dos aplicaciones.
55B.- Secret Code. Cdigos Secretos en el Android.
56.- Programas bsicos I: Diccionario web. Bisiestos.
Divisores. NIF.
56B.- Programas bsicos II: Multiplicar. Media. Cuenta
letras. Velocidad, espacio.
56C.- Programas bsicos III: Zoom automtico. Zoom
scroll. Cargar dibujo de sdcard.
56D.- Programas bsicos IV: Click y LongClick. Archivo a
ListView. Guardar datos y recuperarlos.
56E.- Programas bsicos V: Resolucin de pantalla.
Decimales. Entrada de datos numrica. Iconos oficiales del
Android.
56F.- Programas bsicos VI: Consultar Batera.
57.- SQLite.
58.- Calendario + SQLite = Agenda
59.- Orientacin. Horizontal - Vertical.
59B.- Orientacin. Telfono o tablet.
60.- Caducidad de un programa. Fecha y hora.
Obfuscacin.
61.- Gif animado en pantalla. Librera GifDecoder.
62.- Elajorcao.
63.- Soy un reloj.
64.- Colores.
65.- Colores-2. Scroll de colores. Mezcla de colores.
66.- HorizontalScrollView. Tag. Paneles deslizantes.
67.- Dibujar trazos en la pantalla.
68.- OpenGL. (solo informacin)
69.- Brjula. Giro de una imagen.
70.- Servidor web.
71.- Cdigos pequeos.
72.- ExpressionEvaluator, librera.
73.- XML. XmlSax.
74.- FTP. Filezilla.
75.- Osciloscopio sencillo para el Android.

76.- Widgets.
77.- Bajar archivo .zip de Internet. Descomprimirlo. Ver su
sitio web offline.
78.- B4AServer. RDC. Wifi entre dos mviles. Wake On
Lan. Walkie Talkie.(solo informacin)
79.- Cambiar el tipo de letras. Fuentes.
80.- Flurry Analitics. Seguimiento de tu aplicacin.
81.- Marquee. Movimiento de letras en un Label.
82.- KeyValueStore.
83.- Tres en raya.
84.- Fase lunar.
85.- Classes. (solo informacin)
86.- Librera AHActionBar. (solo informacin)
87.- Librera Reflection. (solo informacin).
88.- Librera Locale. Obtener informacin de la
configuracin.
89.- Instalar archivo .apk desde la SDCard.
90.- Redireccionar entre web para mvil y para ordenador.
91.- Giro de imagen.
92.- Crear una sencilla librera con Eclipse. (I)
93.- Crear una sencilla librera con B4A. (II)
93B.- Crear una sencilla librera con Simple Library
Compiler. (III)
94.- Librera RichString. Letras de colores en los Label.
95.- Librera LiveWallpaper. Fondo de pantalla. Servicio.
96.- ApkTool. keytool. jarsigning. zipaligning. Subir al Play
de Google.
97.- Obtener archivos adjuntos de correo. Estudio.
98.- Descompilar con dex2jar y jd-gui.
99.- Comandos desde la aplicacin. Versin de Android.
100.- El cuento de la Buena Pipa. MsgBox2. Bajar: cbp.apk
101.- Cdigo Q
102.- Android HDMI Stick.
103.- Producto de matrices. InputBox.
104.- RDC
105.- Funciones matemticas con API Chart de Google.

106.- Imprimir con Cloud Print Google.


107.- Escritorio remoto con el mvil.
- Bajar Visual Basic 2010 para Windows

__________________________________________________
__________________

- Aqu puedes encontrar la gua de


principiantes (guide.zip) y la gua de
usuarios avanzados (UserGuide.zip) (en
ingls).
El ncleo
__________________________________________________
______________

_________________________
_________
Qu es Basic4Android?
- Es una aplicacin con la que podemos realizar programas para los telfonos o
tabletas con Android.
- El BASIC4Android, est realizado para poder hacer programas para el Android de
una forma parecida a como se programa en Visual Basic.
- El BASIC4Android es un programa comercial, cuesta unos 35 .
(En muchos momentos ponen ofertas de 25 ). Existe una versin demo gratuita
pero limitada, no puedes cargar nuevas libreras.
- App Inventor. Existe otra manera sencilla para hacer programas para el Android:
App inventor (esta aplicacin es gratuita), he puesto un pequeo tutorial en: App

inventor. App inventor es gratis.


- Otro programa, este de pago (70 ) para programar de manera parecida a Visual
Basic es NSBasic.
- chale un vistazo tambin a Mono y a MonoTouch de Xamarin. Tambin
a LiveCode para hacer aplicaciones multiplataforma.

_________________________
_________
Hay dos formas de utilizarlo, con SDK y sin SDK El SDK es un emulador para que puedas
hacer las pruebas en tu ordenador, si utilizar el mvil.
En principio vamos a ver cmo podemos trabajar sin SDK, simplemente instalando el
Basic4Android en el ordenador y un programa R4A Bridge en el mvil o tablet.
(Luego veremos cmo funciona con el SDK)

-- Instalacin sin SDK


Baja e instala en el mvil o la
tablet el programa B4A
Bridge. Bjalo de aqu.
Instala en el ordenador el programa
Basic4Android.
Ve a Tools / B4A Bridge / Connect Wireless y escribe la IP que vistes
en la pantalla anterior, en mi caso
192.168.1.10

A partir de ahora cuando quiera conectar el ordenador con el mvil mediante


esta aplicacin, pulsa en la aplicacin Start - Wireless y en
Tools / B4A Bridge / Connect - Wireless pulsa sobre la IP que has escrito.

O pulsas directamente la tecla F2.

Para poner los botones y casilleros


en la pantalla se utiliza el Designer.
En el Designer ve a Tools / Connect
To Device / Emulator, para poder
poner los botones y casilleros en la
pantalla del mvil y cambiarlos de
posicin y tamao.
Tambin se puede situar los
botones y casilleros mediante el
Designer Tools / Show Abstract
Designer

Tal como lo acabamos de instalar puedes trabajar completametne con


Basic4Android, no necesitas nada ms.

Si quieres trabajar con el emulador del SDK sigue estos pasos. El SDK es idneo
para tener un emulador del mvil en nuestro ordenador y hacer pruebas hasta que el
programa funcione, luego cuando ya lo tengamos lo pasamos el mvil o a la tablet.
Tambin es muy til para situar los elementos del Designer.
La mejor manera de colocar los controles en la pantalla durante el diseo en
con el emulador del SDK.
Es aconsejable instalar el SDK.
---------------------------------------------------------------------------------------------------

-- Instalacin del SDK.


(3 pasos = Java + emulador SDK + Basic4Android)
---------------------------------------------------------------------------------------------------

1.- Instala Java


- Puedes bajarte Java gratuitamente de...Java 7
- Marca la opcin: Accept License Agreement

JDK

- Selecciona Windows x86. (Android SDK no funciona con Java de Windows x64,
as que aunque tengas un sistema operativo de 64 bits, instala el Windows x86)

Actualmente la versin: jdk-7u21-windows-i586.exe

2.- Instala el SDK para Android de Google.


IMPORTANTE:
Antes de comenzar la instalacin crea en el disco C una carpeta llamada Android, es
decir C:\Android e instala el SDK en esa carpeta.
(No es conveniente instalar el SDK en la carpeta "Archivos de programa", ya que las
carpetas cuyo nombre tienen espacios no funcionan correctamente con el SDK)

- Vas
a http://developer.android.com/sdk/index.ht
ml
Pulsa en VIEW ALL DOWNLOADS AND SIZES

Luego en installer_r23.0.2-windoews.exe (El que ponga Recommended)

Creacin del emulador (o emuladores)


Una vez instalado el SDK, vas al botn de inicio de Windows / Todos los
programas / Android SDK Tools

Pulsa en SDK Manager y marca las versiones de Android que quieres instalar,
puedes instalar ms de una. aqu he instalado la Android 2.2 (API 8) y el USB Driver.

Marca:
Android
SDK
Tools
Android
SDK
Platformtools
Android
SDK
BuildTools
Android
2.2 (API
8) - SDK
Platform
Google
USB
Driver
package
Pulsa
el boton
de
Install pa
ra que
bajen de
Internet y
se
instalen.
NOTAS:
- En el
dibujo de
la
izquierda
no est
el
Android
SDK
Build
-Tools,
mrcalo
para

instalar.
Solo es
preciso
una
versin,
no hace
falta que
instales
todas las
versione
s.
- Puedes
instalar
distintas
versione
s de
Android,
observa
tambin
su API.

Pulsa en Tools / Manage AVDs y crea un New Dispositivo Virtual Android (es un
emulador de Android)
- Le pones un nombre: juan3
- Eliges el emulador Android 2.2 - API Level 8
- y una forma, WVGA800 (ms tarde crea otro emulador con otra forma para ver que
ocurre)una vez creado el emulador lo hacemos funcionar pulsando el botn Start... y
luego Launch (Tarda algn tiempo en cargarse totalmente, a veces ms de un
minuto - pazenzia, pazenzia).
NOTA: Tambin puedes establecer un tamao de tarjeta de memoria SD Card, por
ejemplo 1 GB.

Versin antigua

Nueva
versin

NOTA: en las nuevas


versiones del SDK,
debemos elegir Device,
pongamos un Nexus One.
El Target vamos a dejarlo
en Android 2.2 - API Level
8.Ms adelante puedes
experimentar poniendo
Tablets.
Puedes tener varios
emuladores AVD

Emulador con Android 2.2 y


Built WVGA800

Emulador con Android 4.0 y


Bulit-in HVGA.
Fjate que tiene el icono de un
candado cerrado. Pulsando sobre
l, y luego arrastrndolo hacia la
derecha conseguimos abrirlo.

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////

3.- Instalacin del programa BASIC4Android


Ya tenemos preparado el SDK para poder emular al Android.
Ahora vamos a instalar el programa BASIC4Android, este programa est realizado
para poder hacer programas para el Android de una forma parecida a como se
programa en Visual Basic.
Es un programa de pago viene a costar unos 35 .Puedes bajar una versin de
prueba
de... http://www.basic4ppc.com/android/downloads.html
- Una vez instalado el BASIC4Android, debemos indicarle dnde est el JAVA y el
SDK, para ello vamos a:
Tools / Configure Paths

Indicamos dnde est el JAVA (javac.exe) y el SDK de Android (android.jar).

Ya est casi, casi...


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////

Problemas que puedes encontrar en la instalacin


1.- Cuando vas a compilar un programa que has realizado sale este error... ZipAlign
file. Error
Cannot find:
Please configure paths (Tools - Configure Paths). Falta el archivo zipalign.exe
- Vas a donde has instalado el SDK, en mi caso en C:\Android\android-sdk
entras en la carpeta bulid-tools y en una carpeta de la ltima versin, por
ejemplo 21.0.1
copia el archivo zipalign.exe
lo pegas en C:\Android\android-sdk\platforms\android-8
o en la versin del android que ests utilizando Si no te funciona cpialo tambin
en C:\Android\android-sdk\tools

2.- Resulta que cuando he creado un programa en BASIC4Android y he intentado


compilarlo me ha dado el error de que no encuentra el puetero archivo aapt.exe
(Cannot find: aapt.exe)

Si vas C:\Android\android-sdk\platforms vers si tienes instalada ms de una


versin de Android, mira si tienes la carpeta tools, en caso que no la tengas,
consulta otras versiones de la carpeta platforms y si la tiene, copia la
carpeta tools en la plataforma que ests utilizando.Total que si sigues con el error
del aapt.exe bjate este archivo: tools.zip, lo descomprimes y lo pones en la
carpeta: C:\Android\androis-sdk\platforms\android-8NOTA: en las versiones
actuales poner el aapt.exe en...
C:\Android\android-sdk\platform-tools\

///////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///
En fin, hasta aqu llegamos, todo lo anterior ha sido para poder trabajar con el
BASCI4Android. A partir de estos momentos vamos a realizar un programa.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////
Vdeo oficial de aprendizaje bsico

__________________________________________________
______________

_________________________
_________
-- Programas
1.- Nuestro primer programa: Teorema de
Pitgoras.
Bajar Pitagoras.zip

El primer programita que hago siempre para aprender esto, es el teorema de


Pitgoras, tal vez sea por aquello de los catetos.- Introducimos un cateto (X).
- Introducimos otro cateto (Y).
- Calculamos la hipotenusa (Z) = raiz cuadrada (un cateto al cuadrado + otro cateto
al
cuadrado)

- Lo primero crear la carpeta Pitagoras que ser donde guardemos el programa.


IMPORTANTE: Cada programa se guarda en una carpeta distinta.
Es conveniente crear la carpeta del programa antes de comenzar a poner los
cdigos. En nuestra carpeta C:\Android, creamos una subcarpeta
llamada Pitagoras.
Entramos en el BASIC4Android
Vamos a File / Save y guardamos el programa (incluso antes de comenzar)
en C:\Android\Pitagoras con el nombre pitagoras.b4a

- Situar los elementos en la pantalla del emulador. Designer. AddView.


Vamos a poner los casilleros, etiquetas y el botn, para ello vamos Designer y
ponemos:
- una Label1 (mediante AddView) (En el Text escribe: Introduce un cateto)

Ahora vamos a dar nombre y a guardar nuestro Designer, para ello vamos a File /
Save
y le damos un nombre a nuestro diseo, vamos a llamarlo Layout1
(cada vez que cambiemos algo en el Designer debemos de guardarlo: Save)

- El Layout se guarda en la carpeta C:\Android\Pitagoras\Files\Layout1.bal


- En un programa puede haber ms de un Layout.bal
- Le podemos poner cualquier nombre: layout, circuito, 1, formulario, acerca_de,...
- Conectamos al emulador
Para que el Label1 que hemos construido pase al emulador SDK pulsamos en
el Designer: Tools / Connect

- Reubicamos los controles (View)


Observa cmo se ha insertado el Label1 en el emulador del Android, lo puedes
cambiar de posicin y de tamao.

Tools / Connect

Prefiero esta forma de reubicar los


controles.

Tools / Show Abstract


Designer

A partir de la versin
1.7 aparece este
ubicador de View
(controles). Lo
podemos
habilitar/deshabilitar
desde
Tools / Show Abstract
Designer.

Ahora aade un casillero: AddView / EditText1


Aade otro Label: AddView / Label y en su Text escribe: Introduce el otro cateto

Aade otro casillero: AddView / EditText2


Aade un Botn: AddView / Button (en su Text escribe: Pulsa)
Aade otro Label; AddView / Label (en su Text escribe Hipotenusa)
Aade otro Label: AddView / Label
Guarda todo el Designer: File / Save
(No te equivoques, debes mantener el nombre del Designer en Layout1)Si observas

el emulador debe quedar as:

En programacin no olvides nunca el File / Save. (o el icono del disquete).


- Borrar un elemento.

- En caso que queramos borrar un elemento, lo marcamos, pulsamos en Tool /


Remove Selectec View.
Tambin podemos poner un elemento encima o detrs de otro mediante Bring To
Front.
- Crear el cdigo
Ahora vamos hacer que cuando hagamos Click en el Button, se realice la
operacin, para ello vamos a hacer que aparezca en nuestro cdigo la Subrutina:
Sub Button1_Click
End Sub
Para ello vamos al Designer / Tools / Generate Members
y marcamos Click en el Button1
Luego pulsa en Generate Members

Si consultas el cdigo observars que se ha creado las lneas.


Sub Button1_Click
End Sub
- Vamos al cdigo: (copia y pega)
Cdigo de pitagoras
'Activity module
Sub Process_Globals
' Juan Antonio Villalpando
' juana1991@yahoo.com
End Sub

Sub Globals
Dim x, y, z As Double ' Establecemos las variables
Dim EditText1, EditText2 As EditText ' Tenemos que declarar los EditText
utilizados
Dim Label1, Label2, Label3, Label4 As Label ' Tenemos que declarar los Label
utilizados
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Layout1") 'Cargamos el Designer
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub Button1_Click
x = EditText1.Text
y = EditText2.Text
z = Sqrt(Power(x,2) + Power(y,2))
Label4.text = z
End Sub

- Poner un nombre de Package y un nombre de general de


Etiqueta (Label)
Es MUY IMPORTANTE que le pongas un nombre de paquete y una etiqueta a tu
programa.
(ya que de otra manera se llamarn todos igual, y luego te costar trabajo
reconocerlos cuando estn en el mvil)
- El Package Name lo escribimos mediante el siguiente men:
Project / Package Name.
(El Package Nombre es el nombre del programa empaquetado, preparado para instalarlo en el mvil)

El Package Name debe constar de al menos dos palabras separadas por punto, se
suele poner com. y luego su nombre, es decir:
com.pitagoras

- El Label lo ponemos mediante el cdigo


(El Label es el nombre del programa con el que aparecer en la pantalla del mvil)

#SupportedOrientation: lo utilizaremos si queremos que nuestra aplicacin en el


mvil funcione en horizonal, vertical o ambas
#FullScreen y #IncludeTitle si queremos la aplicacin en pantalla completa y sin/con
ttulo.

- Ejecucin del programa


Para compilarlo y que funcione, pulsamos sobre el icono de la flecha azul.

- Cmo lo he realizado:
- Declaramos las variables y los controles utilizados.
- Tomamos el valor puesto en EditText1 y lo asignamos a x
- Tomamos el valor puesto en EditText2 y lo asignamos a y
- Hacemos los cuadrados y la raiz.
- Presentamos el valor de z en el Label4
Nota: Para que solo salgan 3 decimales en el casillero.
Label4.text = NumberFormat(z,0,3)

Nota: El BASIC4Android no permite hacer el cuadrado de esta manera x ^ 2, en


todo caso admite Power(x, 2)
Diferencias entre VB y BASIC4Android

No te gusta que salga el teclado en la pantalla?


No puedes utilizar el teclado del ordenador para escribir los nmeros?
Consulta abajo de esta misma
pgina. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////

- Psalo al mvil

Bien, me funciona, cmo puedo pasarlo a mi telfono con Android para


utilizarlo?
Ve a C:\Android\Pitagoras\Objects y pasa mediante un cable USB el
archivo pitagoras_DEBUG.apk a tu mvil.
(O bien lo puedes pasar mediante Tools / B4ABridge / Connect Wireless)

IMPORTANTE:
Tarda mucho en arrancar el programa cuando lo pasas al mvil?
Eso es porque el archivo compilado pitagoras_DEBUG.apk, contiene el cdigo de
depuracin _DEBUG
- Para que no lo contenga vamos a Release como indica el grfico. (nuevas
versiones)
De esta manera cuando compilemos el programa obtendremos el
archivo pitagoras.apk, que tendr menor tamao que el pitagoras_DEBUG.apk

Poner en Release el desplegable para obtener pitagoras.apk


Comprueba que cuando pones en Release el archivo se
llamar pitagoras.apk y cuando lo pones en Debug, se pone
en pitagoras_DEBUG.apk, adems ocupar ms tamao que el anterior.
Obfuscated, significa que al compilarlo el cdigo sufre una codificacin
para que sea ms complicado mediante ingeniera inversa saber cmo
est realizado el programa, para nosotros no es necesario.
Tambin es una buena manera de hacer las pruebas en
modo Debug(rapid)

- Lo normal sera ponerlo en Debug (rapid) mientras estamos realizando


el programa y haciendo las correcciones y en Release cuando ya lo
tenemos bastante adelantado para subirlo al mvil.
Nota sabia: si pulsas la combinacin de teclas Control F11, el emulador
cambiar de orientacin, aunque se perdern algunos controles y los
valores de las variables, ms adelante ya veremos como se puede
corregir.
- Como veremos ms adelante, tambin puedes conectar el mvil al
ordenador mediante un cable USB y visualizar todo el proceso de
situacin de los controles, depuracin y ejecucin en el mvil, en este caso
no te hara falta el SDK del emulador.

Varias cosas que debes recordar siempre:

- Cada proyecto debe estar en una carpeta distinta.


- Acabado de entrar en el proyecto, pulsa la flecha azul de
ejecutar/compilar para que se creen las carpetas
necesarias, especialmente una llamada Files que es donde en otros
proyectos guardars imgenes, textos,...
- En los primeros momentos ponle un nombre de paquete y una etiqueta a
tu proyecto ( Project / Package Name y Application Label.)

Nota sabia: - Anteriormente he indicado que debemos declarar los controles


antes de utilizarlos. Dim EditText1, EditText2 As EditText ' Tenemos que
declarar los EditText utilizados
Dim Label1, Label2, Label3, Label4 As Label ' Tenemos que declarar los
Label utilizadosEn realidad solo tenemos que declarar los controles que se

utilizan dentro de una Subrutina. En este programa solo sera necesario


declarar.Dim EditText1, EditText2 As EditText
Dim Label4 As Label Ya que solamente el Label4 est dentro de una Subrutina,
los dems Label no estn.

Ms Nota sabia:
- Sabemos que los archivos que "contienen" los programas para el Android
son de tipo Pitagoras.apk, pero qu hay dentro de ese archivo?
- Tomamos un archivo .apk y le cambiamos la extensin a .zip, es decir
cambiamos el nombre de Pitagoras.apk a Pitagoras.zip.
Vamos a un programa compresor/descompresor de archivos como
el Winrar, el Winzip... y abrimos el Pitagoras.zip.- Tambin lo podramos
ver, pulsando con el botn derecho sobre Pitagoras.apk y luego
en Abrir con... Winrar.

__________________________________________________
_____________

_________________________

_________
2.- Nuestro segundo programa: Adivina
Bajar Adivina.zip
Ahora se trata de hacer un programa llamado Adivina donde pulsamos un botn, en
ese momento el mvil crea un nmero aleatorio comprendido entre el 1 y el 100 que
debemos adivinar. Luego introducimos un nmero en el casillero y pulsamos el
botn Es este? El programa nos responder si el nmero creado es igual, mayor o
menor que el que hemos introducido.
Notas: Antes de comenzar el proyecto creamos una carpeta llamada adivina y
dentro de ella un archivo llamado adivina.b4a
Cada vez que hagas un cambio en el cdigo gurdalo (File / Save)
Si te equivocas y quieres deshacer el cambio pulsa la combinacin de teclas Ctrl Z

Vamos a situar los botones


mediante el Designer

Recuerda:

- Vamos a Designer para poner


los botones.- Pulsa Designer /
Tools / Connect: para que los
elementos pasen al emulador y
podamos situarlos
convenientemente.

- Pulsamos en AddView y
aadimos 2 Botones, 2 Label y un
EditText.
- En el Text del botn1
escribimos: Pulsa para una
nueva partida
- En el Text del botn 2
escribimos: Es este?
- En
el Text del Label1 escribimos: Intr
Designer / File / Save: para oduce un nmero
guardar el diseo, le damos de - En
nombre Layout
el Text del Label2 escribimos:Designer / AddView: para
poner elementos en el
emulador
Designer / Tools /
Connect: para que esos
elementos pasen al emulador
y podamos situarlos
convenientemente.

Desinger / Generate
members: para que en el

- Situamos los botones como

cdigo aparezca las


subrutinas de los elementos,
por ejemplo:
Sub Button1_Click
End Sub

indica la figura de la izquierda.


- Guardamos el Designer (File /
Save) y le damos como
nombre Layout- Vamos hacer que
en el cdigo aparezca:
Sub Button1_Click
End Sub
Para ello en el Designer pulsamos
en Tools y Generate members
marcamos todos los Click de los
botones
pulsamos en Generate members

en el cdigo aparecer...

Sub Button1_Click
End Sub

Vamos al cdigo: (copia y pega)


Cdigo de adivina
'Activity module
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
' Juan Antonio Villalpando
' juana1991@yahoo.com
End Sub
Sub Globals
' Declaramos las variables ordenador y mio e indicamos de qu tipo son nuestros
controles EditText y Label
Dim ordenador, mio, intentos As Int
Dim Label1, Label2 As Label
Dim EditText1 As EditText
End Sub
Sub Activity_Create(FirstTime As Boolean)
' Activamos nuestro Designer llamado Layout
Activity.LoadLayout("Layout")
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub Button1_Click
' Cuando pulsamos el Botn1, se crea un nmero aleatorio entre 1 y 100 en la
variable ordenador
ordenador = Rnd(1,100)
End Sub
Sub Button2_Click
' Cuando pulsamos el Botn2, asigna a la variable mio el valor del EditText
' Se compara el valor de ordenador con el mio
mio = EditText1.Text
If ordenador > mio Then Label2.Text = "Mi nmero es mayor"

If ordenador < mio Then Label2.Text = "Mi nmero es menor"


If ordenador = mio Then Label2.Text = "HAS ACERTADO"
End Sub

Comentarios
Dim Label2 As Label

El Label1 ("Introduce un texto"), no es necesario declararlo, ya que no se encuentra


dentro de ninguna Subrutina.
El Label2 s hay que declararlo, porque est dentro de una Subrutina.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////
Nota: Tambin podramos sacar los mensajes mediante ventanas emergentes:
ToastMessageShow ("Mi nmero es mayor", False)
o bien
MsgBox("Mi nmero es mayor", "Informacin") y tambin
MsgBox2("Mi nmero es mayor", "Informacin", "Si", "Cancelar", "No", dibujo)

Varias cosas que debes recordar siempre:- Cada proyecto debe estar
en una carpeta distinta.
Al principio te equivocars varias veces y pondrs distintos
programas en la misma carpeta, pero... al cabo de un par de veces
ya aprenders !!! Recuerda cada aplicacin en una carpeta distinta.
- Acabado de entrar en el proyecto, pulsa la flecha azul de
ejecutar/compilar para que se creen las carpetas
necesarias, especialmente una llamada Files que es donde en otros
proyectos guardars imgenes, textos,...
- En los primeros momentos ponle un nombre de paquete y una etiqueta a
tu proyecto ( Project / Package Name y Application Label.)

__________________________________________________
_____________

_________________________

_________ 3.- Nuestro tercer


programa: Ruleta Rusa
Bajar Ruleta.zip
En este caso tenemos un revlver de 6 balas. Primero Rearmamos el revlver
poniendo una sola bala y girando el tambor. La bala se ubicar aleatoriamente en
uno de los 6 sitios. Luego vamos pulsando de manera desordenada los distintos
botones . Si el nmero de lugar de la bala coincide con el nmero del Botn pulsado,
la pantalla se tie de rojo En caso contrario se deshabilita (Button.Enabled = False )
el botn pulsado
Notas: Antes de comenzar el proyecto creamos una carpeta llamada ruleta_rusa y
dentro de ella un archivo llamado ruletarusa.b4a
Cada vez que hagas un cambio en el cdigo gurdalo (File / Save)
Si te equivocas y quieres deshacer el cambio pulsa la combinacin de teclas Ctrl Z

Vamos a situar los botones


mediante el Designer

- Vamos a Designer para poner los


botones.- Pulsa Designer / Tools /
Connect: para que los elementos
pasen al emulador y podamos
situarlos convenientemente.

Recuerda:

- Pulsamos en AddView y aadimos


7 botones y un Label.
- En el Text de los botones
ponemos un nmero del 1 al 6.
- El Text del botn 7 escribimos:
Rearme.
- El Label lo ponemos de color azul
como indica la figura de la
izquierda.- Pulsamos en Tools y
luego enConnect para pasar los
controles al emulador. (mira el
emulador para situar los botones)

Designer / AddView: para


poner elementos en el
emulador
Designer / Tools /
Connect: para que esos
elementos pasen al
- Situamos los botones como indica
emulador y podamos
la figura de la izquierda. (El Label1
situarlos convenientemente. puede quedar en color negro
mientras estamos en el Designer,
Designer / File / Save: para ms tarde se pondr azul)
guardar el diseo, le damos - Guardamos el Designer (File /
de nombre Layout
Save) y le damos como
nombre Layout
Desinger / Generate
members: para que en el
- Vamos hacer que en el cdigo

cdigo aparezca las


aparezca:
subrutinas de los elementos,
Sub Button1_Click
por ejemplo:
Sub Button1_Click

End Sub

End Sub

Para ello en el Designer pulsamos


en Tools y Generate members
marcamos todos los Click de los
botones
pulsamos en Generate members

en el cdigo aparecer...
Sub Button1_Click
End Sub

Vamos al cdigo: (copia y pega)


Cdigo de ruleta rusa
'Activity module
Sub Process_Globals
' Juan Antonio Villalpando
' juana1991@yahoo.com
End Sub
Sub Globals
' Declaramos la variable x e indicamos de qu tipo son nuestros controles Button
y Label
Dim x As Int
Dim Button1 As Button
Dim Button2 As Button
Dim Button3 As Button
Dim Button4 As Button
Dim Button5 As Button
Dim Button6 As Button
Dim Button7 As Button
Dim Label1 As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
' Activamos nuestro Designer llamado Layout
' Ponemos el Label1 de Color Azul
' Creamos un nmero aleatorio del 1 al 6
Activity.LoadLayout("Layout1")
Label1.Color=Colors.Blue
x = Rnd(1,6)
End Sub
Sub Activity_Resume
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
' Si pulsamos un botn y el nmero de ese botn coincide con el nmero
aleatorio x
' Entonces el Label1 se pone de Color.Rojo
' En caso contrario este Botn se deshabilita
Sub Button1_Click
If x = 1 Then
Label1.Color=Colors.Red
Else
Button1.Enabled=False

End If
End Sub
Sub Button2_Click
If x = 2 Then
Label1.Color=Colors.Red
Else
Button2.Enabled=False
End If
End Sub
Sub Button3_Click
If x = 3 Then
Label1.Color=Colors.Red
Else
Button3.Enabled=False
End If
End Sub
Sub Button4_Click
If x = 4 Then
Label1.Color=Colors.Red
Else
Button4.Enabled=False
End If
End Sub
Sub Button5_Click
If x = 5 Then
Label1.Color=Colors.Red
Else
Button5.Enabled=False
End If
End Sub
Sub Button6_Click
If x = 6 Then
Label1.Color=Colors.Red
Else
Button6.Enabled=False
End If
End Sub
' Rearme. El Label1 vuelve a ser Azul y todo los Botones se habilitan.
' Se crea un nmero aleatorio del 1 al 6
Sub Button7_Click
Label1.Color=Colors.Blue
Button1.Enabled=True
Button2.Enabled=True
Button3.Enabled=True
Button4.Enabled=True
Button5.Enabled=True
Button6.Enabled=True
x = Rnd(1,6)
End Sub

Sub Label1_Click
End Sub

Comentarios
Los Button tambin se podra haber declarado as:
Dim Button1, Button2, Button3, Button4, Button5, Button6, Button7 As Button

Varias cosas que debes recordar siempre:


- Cada proyecto debe estar en una carpeta distinta.
- Acabado de entrar en el proyecto, pulsa la flecha azul de
ejecutar/compilar para que se creen las carpetas
necesarias, especialmente una llamada Files que es donde en otros
proyectos guardars imgenes, textos,...
- En los primeros momentos ponle un nombre de paquete y una etiqueta a
tu proyecto ( Project / Package Name y Application Label.)

__________________________________________________
_____________

_________________________
_________
4.- Nuestro cuarto programa: Tres iguales
Bajar Tres_iguales.zip
Se trata de pulsar el botn Comienzo, en ese momentos tres imagenes fresa.gif,
limon.gif y pera.gif, se van reproduciendo aleatoriamente en los cuadros
(ImageView1, ImageView2 y ImageView3). Cuando pulsamos el botn Parar, las
imagenes quedan estticas, se incrementa en uno el nmero de intentos y se
comprueba si las tres imagenes son iguales, en este caso se incrementa en uno el
nmero de aciertos.
Creamos una carpeta llamada Tres_iguales, dentro de ella el
archivo tresiguales.b4a.
Baja y descomprime el archivo de los dibujos de las frutas y guarda esos dibujos
en la carpeta Tres_iguales / Files

(IMPORTANTE: Si no ves la carpeta Files, ejecuta el programa con el cdigo de


inicio, de esta manera se crear la carpeta Files)

NOTA
IMPORTANTE: E
n vez de guardar
los archivos de
imgenes
mediante copiar
y pegar en la
carpeta Files, es
ms conveniete
Aadirlos (Add
Files) mediante
el mismo
Basic4Android,
pulsando el
btn abajoderecha:
Files / Add Files
ade siempre
los archivos que
debas guardar
en Files de esta
manera.!!!!
(Incluso primero
los puedes copiar
y pegar en la
carpeta Files y
luego aadirlo
mediante estos
botones.)

Vamos a situar los botones


mediante el Designer

- Vamos a Designer para poner los


botones.- Pulsa Designer / Tools /
Connect: para que los elementos
pasen al emulador y podamos
situarlos convenientemente.- Pulsa el
botn Add Images y aade los
grficos de las frutas.
- Pulsamos en AddView y aadimos
3 botones y 5 Label.
- En el Text del Botn1 he
puesto Continua
- En el Text del Botn2 he
puesto Parar
- En el Text del Botn3 he
puesto Comienzo - En el Text del
Label1 escribe PREMIO!!! y lo
pones de color rojo- En el Text del
Label2 escribe Intentos
- En el Text del Label3 escribe - En el Text del Label4
escribe Aciertos
- En el Text del Label5 escribe - Una vez puestos y situados
los Label2, 3, 4 y 5 le pones el Text
Style / Text Color NEGRO
(la pantalla el emulador es de color
negro, pero cuando funciona se pone
de color blanco, cuidado con eso)

Vamos al cdigo: (copia y pega)


Cdigo de tres iguales
'Activity module
Sub Process_Globals
' Juan Antonio Villalpando
' juana1991@yahoo.com
' Diciembre 2011
' Crea el temporizador
Dim Timer1 As Timer
End Sub
Sub Globals
' Declara los ImageView y los Label
' Declara las variables x, y, z, intentos y aciertos.
Dim ImageView1, ImageView2, ImageView3 As ImageView
Dim Label1, Label2, Label3, Label4, Label5 As Label
Dim x, y, z As Int
Dim intentos, aciertos As Int
End Sub
Sub Activity_Create(FirstTime As Boolean)
' Activa el Designer que hemos guardado como Layout
' Establece el tiempo del temporizador en 100 milisegundos
' Para el temporizador
' Pone invisible el Label1 de Premio
Activity.LoadLayout("Layout")
Timer1.Initialize("Timer1", 100) ' 1000 = 1 segundo
Timer1.Enabled = False
Label1.Visible= False
End Sub
Sub Button1_Click
' Cuando pulses este botn
' El Timer empieza a contar
' Pone invisible el Label1 de Premio
' Incrementa el nmero de intentos
' Pone el nmero de intentos en el Label3
Timer1.Enabled = True
Label1.Visible= False
intentos = intentos + 1
Label3.Text = intentos
End Sub
Sub Button2_Click
' Cuando pulses este botn
' El Timer se para
' Si la x = y = z los tres iguales: pone el PREMIO, incrementa los aciertos, pone
los aciertos
Timer1.Enabled = False

If x = y AND x = z Then
Label1.Visible= True
aciertos = aciertos + 1
Label5.Text = aciertos
End If
End Sub
Sub Button3_Click
' Cuando pulses este botn
' Pone los intentos y los aciertos a cero
intentos = 0
Label3.Text = intentos
aciertos = 0
Label5.Text = aciertos
Timer1.Enabled = True
Label1.Visible= False
End Sub
Sub Timer1_Tick
' Cada vez que pasan 100 milisegundos
' Se crean tres nmeros aleatorios del 1 al 3 (aunque aqu para que funcione he
puesto el 4)
' Segn salga el 1, el 2 o el 3, se carga en el ImageView1, ImageView2 y
ImageView3 un dibujo
x = Rnd(1,4)
y = Rnd(1,4)
z = Rnd(1,4)
If x = 1 Then ImageView1.Bitmap = LoadBitmap(File.DirAssets, "fresa.gif")
If x = 2 Then ImageView1.Bitmap = LoadBitmap(File.DirAssets, "limon.gif")
If x = 3 Then ImageView1.Bitmap = LoadBitmap(File.DirAssets, "pera.gif")
If y = 1 Then ImageView2.Bitmap = LoadBitmap(File.DirAssets, "fresa.gif")
If y = 2 Then ImageView2.Bitmap = LoadBitmap(File.DirAssets, "limon.gif")
If y = 3 Then ImageView2.Bitmap = LoadBitmap(File.DirAssets, "pera.gif")
If z = 1 Then ImageView3.Bitmap = LoadBitmap(File.DirAssets, "fresa.gif")
If z = 2 Then ImageView3.Bitmap = LoadBitmap(File.DirAssets, "limon.gif")
If z = 3 Then ImageView3.Bitmap = LoadBitmap(File.DirAssets, "pera.gif")
End Sub

_________________________
_________
Cmo cambiar el icono del programa.
Una vez que hemos cargado el program en nuestro emulador SDK o en el telfono
mvil, veremos un icono en su pantalla de inicio.

Podemos cambiar ese icono. Vamos a la carpeta donde est el programa (en mi
caso lo estoy haciendo con el programa pitagoras) y entramos en la
subcarpeta drawableC:\Android\Pitagoras\Objects\res\drawableVeremos una
imagen llamada icon.png

Mediante un editor grfico podemos cambiar esa imagen. Debes mantener su


nombre y su tamao (72 x 72).
-

En las nuevas versiones para cambiar el icono:

Project / Choose Icon


(puede ser de tipo jpg, y otras dimensiones que las indicadas
anterioermente.)_________________________________________

_______________________

Visual Basic 2010 Express

Outchhhh!!!!
Ummmm!!!!
Me ha gustado esto de programar en Visual Basic para el Android!!
De dnde podra bajar el Visual Basic "normal" para hacer programas para mi
ordenador?

Entra en la web de Microsoft.


http://www.microsoft.com/visualstudi
o/esn/downloads
Bjate el Visual

Basic 2010

Express
(La versin 2010 est bien, no hace
falta una mayor)Tienes 30 das de
pruebas, pero antes de que se cumplan
envale un correo a Microsoft para
Registrarte y te
envarn gratuitamente a tu correo un
nmero de Registro para que puedas
utilizar el Visual Basic sin problemas
posteriormente.
Con Visual Basic 2010 puedes hacer
programas parecidos a los que estamos
haciendo en Basic4Android, pero para
que funcionen en el sistema operativo
Windows de tu ordenador.

Este sera el programa tresiguales,


visto anteriormente en Visual Basic
2010.
Aqu est el tresiguales.exe

_________________________
_________
- Problemas

con el teclado del emulador. Quitar teclado en

pantalla.
Cuando vamos a escribir algo en un casillero del programa que hemos realizado,
salta el teclado en pantalla del emulador, si no queremos que salga el teclado vamos
al icono de Ajustes.
Teclado

Idiom
ay
teclad
o

Desmarcamos los casilleros.

- Problemas

con el teclado. Despus de reinstalar


versiones del SDK no me funciona el teclado del ordenador
con el emulador.
Vamos al Android Virtual Device Manager. Editamos nuestro AVD. Vamos a Hardware,
pulsamos NEW, agregamos
Keyboard support y lo ponemos en yes.

- No tengo SD Card en el emulador.


Consulta el dibujo superior, establece una SD Card con un tamao de 1 GiB, por ejemplo.