El hombre inteligente es resultado de la evolución y desarrollo humano
y lo ha demostrado en la ciencia y tecnología que ha creado y su inteligencia
está representada en el teléfono inteligente que ha sido inventado por el
hombre como una extensión de su inteligencia y donde se integran las
tecnologías de electrónica, comunicaciones y de computación. Siempre el hombre
busca extender sus capacidades limitadas en herramientas que le ayuden a
solucionar sus problemas. Así es el caso de la herramienta AIDE que se
usa para poder programar la computadora de un teléfono inteligente. AIDE
significa Android Integrated Development Environmente y es un Ambiente de
Desarrollo Integrado para Android. Con este sistema se pueden desarrollar y
crear programas en el mismo teléfono celular que tengan como sistema operativo
android 2.2. Por lo tanto para desarrollar programas es necesario tener un
teléfono inteligente o móvil celular como el que tengo, un Samsung Galaxy mini
con el sistema operativo android 2.2. Para adquirir AIDE se debe usar el
internet del teléfono y de conectarse al mercado o play store de android,
buscar AIDE que es libre, bajarlo e instalarlo y listo se puede iniciar a
programar. Fabuloso! programar en una mano la computadora de un teléfono
inteligente.
P01 Mi primer programa
Después de quedar instalado AIDE buscamos su logo, que es un pequeño
android verde entre llaves azules (1) lo presionamos con el dedo y entramos a
AIDE (2). Presionamos Create new App Project here, para crear un nuevo proyecto
(3) escribimos el nombre del proyecto p01, el nombre del paquete com.gri.p01 y
presionamos Create y se crea el nuevo proyecto (4) p01.
Al generarse el proyecto se generan varias carpetas y archivos. Los 2 puntos(..) significa regresar un nivel superior de la trayectoria de carpetas. Las carpetas creadas son settings, assets, bin (5), gen, res y src (6) y los archivos creados son classpath, project (6), proguard.cfg, Project.properties y AndroidManifiest.xml (7).
Al generarse el proyecto se generan varias carpetas y archivos. Los 2 puntos(..) significa regresar un nivel superior de la trayectoria de carpetas. Las carpetas creadas son settings, assets, bin (5), gen, res y src (6) y los archivos creados son classpath, project (6), proguard.cfg, Project.properties y AndroidManifiest.xml (7).
Las carpetas principales son res que contiene los recursos que utilizara el programa como menus, imágenes y archivos xml para representar las pantallas del programa. La carpeta src contiene diferentes subcarpetas y la última contiene el o los programas en java de la aplicación.
Vamos a compilar, instalar y ejecutar el proyecto p01. Primero seleccionamos
el menú (8) con la tecla de menú y presionamos Run para iniciar la compilación
(9), si no detecta errores, pregunta si desea instalarse la aplicación (10), le
decimos que si la instale (11) y cuando termina envía el mensaje de instalada y
ahora pregunta si se desea abrir o ejecutar, le decimos que la abra y se
ejecuta el programa (12). Maravilloso todo el proceso se realiza en el teléfono
móvil o inteligente. En mi caso en el Samsung Galaxy mini.
P01, Mi primer programa, modificado
Ahora vamos a modificar el proyecto usando solo código de java, en
lugar de usar un archivo xml para desplegar el mensaje de “Hola…mi primer
programa...”, Primero presionamos la carpeta src (6), aparece la
carpeta com (13), presionamos com y aparece la carpeta gri (14) y aparece la
carpeta p01 (15) y despliega el programa principal en java MainActivity.java
(16).
Al presionar el programa de MainActivity (16) entramos al editor de
AIDE y ahora iniciamos la modificación del programa. El proyecto p01 contiene
el programa MainActivity.java e inicia definiendo el nombre del paquete package
com.gri.p01; a continuación importa las librerías que necesita el programa,
define la clase principal de MainActivity y dentro de esta define el método de
onCreate y a continuación las instrucciones que debe realizar el programa.
Primero presionamos el dedo al inicio de la instrucción setContentView y la
comentamos colocando dos diagonales o sea queda como (18):
//setContentView(R.layout.main);
Ahora a continuación de la línea anterior, definimos una nueva
instancia u objeto ll1 de LinearLayout (17) y (18).
LinearLayout ll1 = new LinearLayout(this);
Lo definimos como Vertical.
ll1.setOrientation(LinearLayout.VERTICAL);
Ahora definimos una nueva instancia tv1 de TextView.
TextView tv1 = new TextView(this);
Colocamos el texto de “Hola…mi primer programa…”.
tv1.setText(“Hola…mi primer programa…”);
Ahora agregamos TextView tv1 a LinearLayout ll1.
ll1.addView(tv1);
Finalmente visualizamos todo la pantalla del teléfono con
LinearLayout.
setContentView(ll1);
El programa queda completo (19).
AIDE complenta y checa las instrucciones y si la instrucción es
erronea o falta algo, como en (20) que falta ll1, detecta el error, cuando se
corrige (21) queda libre de errores.
También se puede usar las características del editor de AIDE, se
presiona y mantiene el dedo y aparecen varias opciones del editor (21) y (22).
Se presiona Select para seleccionar el principio de un área y el final de esa
área de texto para copiarlo o cortarlo. Si se va a copiar el área de texto, se
posiciona el dedo en el lugar deseado y aparece un menú donde se selecciona
Edit para copiar el área de texto (23) (24) y (25).
El programa MainActivity .java completo queda como:
package com.gri.p01;
import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
public class MainActivity extends activity{
@Override
public void onCreate(Bundle saveInstancesState{
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
LinearLayout
ll1 = new LinearLayout(this);
ll1.setOrientation(LinearLayout.VERTICAL);
TextView tv1 = new TextView(this);
tv1.setText(“Hola…mi primer programa…”);
ll1.addView(tv1);
setContentView(ll1);
}//oncreate
}//class
Ahora tenemos listo el programa modificado MainActivity para compilarlo,
instalarlo y ejecutarlo. Primero seleccionamos el menú (26), presionamos Run
para compilar el programa (27), si no hay errores, pregunta si desea reemplazar
el programa ya instalado, presionamos aceptar e inicia la instalación (28) y
(29). Cuando termina de instalarse pregunta si desea abrir o ejecutarse el
programa del proyecto p01 (31). Para salir se presiona el menú y la opción de
más u otros se busca salir y se presiona. Se sale de AIDE y despliega el menú
del sistema (32).
Programa de una calculadora simple utilizando código java
En nuestras páginas anteriores del blog hablamos de cómo podemos hacer
operaciones aritméticas simples mentalmente, pero cuando aumenta el tamaño de
las cantidades, es difícil hacerlo mentalmente, necesitamos un procedimiento o
programa para efectuar las operaciones. Ahora veremos como con un programa de
una calculadora en nuestro teléfono inteligente puede realizar operaciones
simples y mucho más complicadas, cuyas soluciones son extremadamente rápidas y
que se puede repetir muchas veces. Estas son las principales diferencias
de una computadora con respecto del hombre, la velocidad y la repetición.
Ahora vamos crear el programa de la calculadora. Primero creamos un
nuevo proyecto MyApp5 con el modulo com.mycompany.myapp5 y vamos a la
carpeta src y editamos el programa MainActivity.
MainActivity.java
package com.mycompany.myapp5;
import android.app.*;
import android.os.*;
import android.text.*;
import android.view.*;
import android.view.View.*;
import android.widget.*;
import android.graphics.*;
public class MainActivity extends Activity implements OnClickListener
{
//Definimos los botones para las operaciones de suma +, resta -,
//multiplicación *, y división /
Button b1;
Button
b2;
Button b3;
Button b4;
//Definimos los cuadros de texto donde introduciremos los datos
EditText et1;
EditText et2;
//Definimos
la vista de texto, donde veremos los resultados de las operaciones
TextView tv2;
// Called when the activity is first created
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//Comentamos la
siguiente instrucción para utilizar solo código java
//para desplegar
la información en la pantalla
//setContentView(R.layout.main);
// Definimos toda la pantalla para desplegar con linearLayout ll1
LinearLayout ll1 = new LinearLayout(this);
//Definimos la
pantalla como vertical
ll1.setOrientation(LinearLayout.VERTICAL);
//Creamos una instancia de TextView tv1 para el titulo de Calculadora
TextView tv1 = new TextView(this);
tv1.setText("Calculadora");
//Ponemos el texto del título en color azul
tv1.setTextColor(Color.BLUE);
//Ponemos el tamaño del texto a 20
tv1.setTextSize(20);
//Centramos el titulo
tv1.setGravity(0x01);
//Agregamos la instancia de TextView tv1 a LinearList ll1
ll1.addView(tv1);
//Creamos LinearLayout ll2 como horizontal para alinear los botones
LinearLayout ll2 = new LinearLayout(this);
ll2.setOrientation(LinearLayout.HORIZONTAL);
//Creamos una instancia Button b1 para la operación suma +
b1 = new Button(this);
b1.setText("Suma");
ll2.addView(b1);
//Creamos una instancia Button b1 para la operación resta -
b2 = new Button(this);
b2.setText("Resta");
ll2.addView(b2);
//Creamos una instancia Button b1 para la operación multiplicación *
b3 = new Button(this);
b3.setText("Multiplica");
ll2.addView(b3);
//Creamos una instancia Button b1 para la operación de suma +
b4 = new Button(this);
b4.setText("Divide");
ll2.addView(b4);
//Agregamos LinearLayout ll2 en ll1
ll1.addView(ll2);
//Creamos una instancia EditText et1 para introducir el primer dato1
et1 = new EditText(this);
et1.setText("Borra e Introduce un numero...");
ll1.addView(et1);
//Creamos una instancia EditText et2 para introducir el segundo dato2
et2 = new EditText(this);
et2.setText("Borra e Introduce otro...");
ll1.addView(et2);
//Creamos una instancia TextView tv2 para desplegar los resultados
tv2 = new TextView(this);
ll1.addView(tv2);
//Despliega toda la pantalla definida por LinearLayout ll1
setContentView(ll1);
//Definimos los botones para escuchar o detectar cuando se presionan
b1.setOnClickListener(this);
b2.setOnClickListener(this);
b3.setOnClickListener(this);
b4.setOnClickListener(this);
}//
oncreate
//Método a ejecutar cuando se presiona los botónes b1 de suma,
//b2 de resta, b3 multiplicación y b4 división
public void onClick(View view){
// Pregunta si se presiona b1
if(view == b1){
//Captura dato1 y dato2
String txt1 = et1.getText().toString();
String txt2 = et2.getText().toString();
//Convierte el texto a punto flotante
float num1 = Float.parseFloat(txt1);
float num2 = Float.parseFloat(txt2);
//Efectúa la operación de suma decimal
float res1 = num1 + num2;
//Despliega el resultado
tv2.append("Resp + :
"+res1+"\n");
// Pregunta si se presiona b2
}else{if(view == b2){
//Captura dato1 y
dato2
String txt1 = et1.getText().toString();
String txt2 = et2.getText().toString();
//Convierte el texto a punto flotante
float num1 = Float.parseFloat(txt1);
float num2 = Float.parseFloat(txt2);
//Efectúa la operación de resta decimal
float res1 = num1 -
num2;
//Despliega el resultado
tv2.append("Resp -
: "+res1+"\n");
// Pregunta si se presiona b3
}else{if(view == b3){
//Captura dato1 y dato2
String txt1 =
et1.getText().toString();
String txt2 =
et2.getText().toString();
//Convierte el texto a punto flotante
float num1 = Float.parseFloat(txt1);
float num2 = Float.parseFloat(txt2);
//Efectúa la operación de multiplicación decimal
float res1 = num1 * num2;
//Despliega el resultado
tv2.append("Resp x :
"+res1+"\n");
// Pregunta si se presiona b3
}else{if(view == b4){
//Captura dato1 y
dato2
String txt1 = et1.getText().toString();
String txt2 = et2.getText().toString();
//Convierte el texto a punto flotante
float num1 = Float.parseFloat(txt1);
float num2 = Float.parseFloat(txt2);
//Efectúa la operación división decimal
float res1 = num1 / num2;
//Despliega el resultado
tv2.append("Resp / : "+res1+"\n");
}//b4
}//b3
}//b2
}//b1
}//onclick
}//class main activ
Programa de una calculadora simple utilizando código java y xml
Programa de la calculadora simple utilizando código java y un archivo
main.xml para definir la interface de la pantalla.
Creamos un nuevo proyecto MyApp6 con el modulo com.mycompany.myapp6. Presionamos la carpeta res y a continuación layout y aparece el archivo main.xml lo editamos y ponemos todas las definiciones para la interface con la pantalla del teléfono. Para comentarios se usa <!-- Comentarios -->
Main.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- Definimos la pantalla con LinearLayout para la aplicación
-->
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<!-- Creamos la instancia TextView para el titulo Calculadora y caract.
-->
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#111199"
android:textSize="25sp"
android:gravity="center"
android:text="Calculadora" />
<!—LinearLayout vertical para los botones de las operaciones -->
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<!-- Instancia Button b1 para sumar y el método suma cuando se presione
-->
<Button
android:id="@+id/b1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="suma"
android:text="Sumar" />
<!-- Instancia Button b2 para restar y el método resta cuando se presione
-->
<Button
android:id="@+id/b2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="resta"
android:text="Restar" />
<!-- Instancia Button b3 para multiplicar y el método multiplica cuando se
presione -->
<Button
android:id="@+id/b3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="multiplica"
android:text="Multiplicar" />
<!-- Instancia Button b4 para dividir y el método divide cuando se
presione -->
<Button
android:id="@+id/b4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="divide"
android:text="Dividir"
/>
</LinearLayout>
<!—Crear instancia de EditText et1 para introducir dato1 -->
<EditText
android:id="@+id/et1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:numeric="integer"
android:inputType="numberDecimal"
android:text="Borra e introduce 1 decimal: " />
<!—Crear instancia de EditText et2 para introducir dato2 -->
<EditText
android:id="@+id/et2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:numeric="integer"
android:inputType="numberDecimal"
android:text="Borra e introduce otro 2 decimal: " />
<!-- Crear instancia de TextView tv1 para desplegar resultados
-->
<TextView
android:id="@+id/tv1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#119911"
android:text="Resultados \n" />
</LinearLayout>
Ahora seleccionamos la carpeta src y seleccionamos y editamos el
programa MainActivity donde se agregan e introducen las siguientes
instrucciones.
MainAtivity.java
package com.mycompany.myapp6;
import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
public class MainActivity extends Activity
{
//Crear las instancias de Button b1, b2, b3 y b4 para las operaciones de
//suma, resta, multiplicación y división
Button b1;
Button b2;
Button b3;
Button b4;
EditText et1;
EditText et2;
TextView tv1;
// Called when the activity is first created
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//Importante, No se comenta la siguiente instrucción
setContentView(R.layout.main);
//Se buscan las definiciones de los botones en main.xml
b1 = (Button)findViewById(R.id.b1);
b2 = (Button)findViewById(R.id.b2);
b3 = (Button)findViewById(R.id.b3);
b4 = (Button)findViewById(R.id.b4);
//Se buscan las definiciones de los textos de edición, en main.xml
et1 = (EditText)findViewById(R.id.et1);
et2 = (EditText)findViewById(R.id.et2);
//Se buscan las definiciones de la vista del texto en main.xml
tv1 =
(TextView)findViewById(R.id.tv1);
}//oncreate
//Método de suma cuando se presiona botón sumar
public void suma(View view){
//Captura dato1 y
dato2
String s1 = et1.getText().toString();
String s2 = et2.getText().toString();
//Convierte el texto a punto flotante
float f1 = Float.parseFloat(s1);
float f2 = Float.parseFloat(s2);
//Efectúa la operación suma decimal
float f3 = f1+f2;
//Despliega el resultado
tv1.append("Res de + : "+f3+"\n");
}
//Método de resta cuando se presiona botón restar
public void resta(View view){
//Captura dato1 y
dato2
String s1 = et1.getText().toString();
String s2 = et2.getText().toString();
//Convierte el texto a punto flotante
float f1 = Float.parseFloat(s1);
float f2 = Float.parseFloat(s2);
//Efectúa la operación resta decimal
float f3 = f1-f2;
//Despliega el resultado
tv1.append("Res de - :
"+f3+"\n");
}
//Método de multiplica cuando se presiona botón multiplicar
public void multiplica(View view){
//Captura dato1 y
dato2
String s1 = et1.getText().toString();
String s2 = et2.getText().toString();
//Convierte el texto a punto flotante
float f1 = Float.parseFloat(s1);
float f2 = Float.parseFloat(s2);
//Efectúa la operación multiplicación decimal
float f3 = f1*f2;
//Despliega el resultado
tv1.append("Res de x : "+f3+"\n");
}
//Método de divide cuando se presiona botón dividir
public void divide(View view){
//Captura dato1 y
dato2
String s1 = et1.getText().toString();
String s2 = et2.getText().toString();
//Convierte el texto a punto flotante
float f1 = Float.parseFloat(s1);
float f2 = Float.parseFloat(s2);
//Efectúa la operación división decimal
float f3 = f1/f2;
//Despliega el resultado
tv1.append("Res de / : "+f3+"\n");
}
}//class
Esta introducción a AIDE y java con los programas de la Calculadora es
complicado para las personas que nunca han programado una computadora, pero se
debe de tener en cuenta que la computadora es solo una herramienta que ayuda al
hombre en solucionar problemas y ahora tienen la oportunidad de poder programar la computadora de su
teléfono inteligente. Para cualquier aprendizaje se debe poner mucha voluntad y
esfuerzo, además de seguir un entrenamiento, en este caso en el lenguaje de
java y que veremos en las siguientes páginas del blog de la Evolución y
Desarrollo Humano y demostrar que la inteligencia de cualquier hombre de esta
época de la información y del conocimiento, puede programar un teléfono
inteligente o móvil. Para programar, primero es necesario que las personas
sepan lo que la computadora va a realizar, en este caso las operaciones
matemáticas sencillas y se debe instruir a la computadora por medio de un
programa que tiene una secuencia de instrucciones para que realicen las
operaciones. Para eso es necesario aprender los principios básicos del lenguaje
java. En la siguiente página del blog veremos los principios del lenguaje java.