¿Cuál es su experiencia con el aprendizaje de la programación de Android (paso a paso)?

Hola a todos,

Aprendí programación de Android cuando estaba en el último semestre en mi BE

Como este era mi tema, tengo que comenzar a aprender sobre él.

Y desde mi experiencia, enfrenté muchos problemas para aprender y configurar el Android, pero más tarde comencé a hacerlo desde el principio y me fui paso a paso, lo que me facilitó la comprensión y el aprendizaje sobre qué es la programación de Android y cómo puedo hacer aplicación de la misma.

La configuración del entorno de desarrollo de Android lleva un tiempo al principio. Ayuda a asegurarse de no hacer nada malo para salvarse de la agonía de volver a hacer todo el proceso.

Se requiere tener Windows XP o posterior, o Mac OS X 10.5.8 o una versión posterior para iniciar el proceso de desarrollo de aplicaciones de Android. Luego, hay cuatro herramientas que necesitará y están disponibles en Internet de forma gratuita:

  1. Java JDK5 o JDK6

Nota para usuarios de Windows: si instaló el JDK en C: \ jdk1.6.0_15, deberá agregar las dos líneas siguientes en su archivo C: \ autoexec.bat.

establecer RUTA = C: \ jdk1.6.0_15 \ bin;% RUTA%
establecer JAVA_HOME = C: \ jdk1.6.0_15

2. Android SDK

La instalación llevará algún tiempo, por lo que, mientras tanto, podría hacer otra tarea para matar el tiempo. ¿Cuánto tiempo tardará? Bueno, depende de la velocidad de su conexión a Internet. Una vez hecho esto, puede cerrar el administrador de SDK.

3. IDE de Eclipse para desarrolladores de Java (opcional)

4. Herramientas de desarrollo de Android (ADT) Eclipse Plugin (opcional)

Antes de escribir el código, debe saber cómo recibir información del usuario. La forma más eficiente de recibir información del usuario es usar la clase Scanner, que se encuentra en el paquete http://java.io, ya que es solo un proceso de dos pasos.


Scanner scan = new Scanner ( Recursos e información del sistema );

Cadena input = scanner.next ();

/ * o String input = (nuevo escáner ( Recursos e información del sistema )). next (); * /


Recomiendo usar la clase Scanner porque funciona igual de bien en la línea de comandos y con Eclipse que usaremos para hacer la aplicación Rock Paper Scissors.

Llamar al código Java en Eclipse

Le ahorraremos la molestia de escribir el código de Java para una aplicación simple Rock Paper Scissors y puede usar el siguiente código, pero puede usar su propio código si lo prefiere.


// Aplicación Android Rock Paper Scissors

// Piedra Papel tijeras

// *************

import java.util.Scanner;

import java.util.Random;

Rock de clase pública

{

public static void main (String [] args)

{

String personPlay; // Juego del usuario: “R”, “P” o “S”

String computerPlay = “”; // Juego de computadora – “R”, “P” o “S”

int computerInt; // Número generado aleatoriamente utilizado para determinar

// juego de computadora

Respuesta de cadena;

Scanner scan = new Scanner ( Recursos e información del sistema );

Generador aleatorio = nuevo aleatorio ();

System.out.println (“¡Hey, juguemos piedra, papel, tijera! \ N” +

“Ingrese un movimiento. \ N” + “Roca = R, Papel” +

“= P y Tijeras = S.”);

System.out.println ();

// Generar juego de computadora (0,1,2)

computerInt = generator.nextInt (3) +1;

// Traducir el juego generado aleatoriamente de la computadora a

// cadena usando sentencias if //

if (computerInt == 1)

computerPlay = “R”;

más si (computerInt == 2)

computerPlay = “P”;

más si (computerInt == 3)

computerPlay = “S”;

// Obtenga el juego del jugador desde la entrada – tenga en cuenta que esto es

// almacenado como una cadena

System.out.println (“Ingrese su juego:”);

personPlay = scan.next ();

// Poner el juego en mayúscula para facilitar la comparación

personPlay = personPlay.toUpperCase ();

// Imprimir juego de computadora

System.out.println (“La reproducción de la computadora es:” + computerPlay);

// Mira quién ganó. Usar ifs anidados

if (personPlay.equals (computerPlay))

System.out.println (“¡Es un empate!”);

más if (personPlay.equals (“R”))

if (computerPlay.equals (“S”))

System.out.println (“¡La piedra aplasta las tijeras. Tú ganas!”);

si no (computerPlay.equals (“P”))

System.out.println (“El papel come roca. ¡Pierdes!”);

más if (personPlay.equals (“P”))

if (computerPlay.equals (“S”))

System.out.println (“¡Tijera corta papel. ¡Pierdes !!”);

si no (computerPlay.equals (“R”))

System.out.println (“El papel come roca. ¡Tú ganas!”);

más if (personPlay.equals (“S”))

if (computerPlay.equals (“P”))

System.out.println (“¡Tijera corta papel. ¡Tú ganas!”);

si no (computerPlay.equals (“R”))

System.out.println (“La piedra rompe las tijeras. ¡¡Pierdes !!”);

más

System.out.println (“Entrada de usuario no válida”);

}

}


Haga clic en Nuevo paquete Java

Asigne un nombre a su proyecto y luego haga clic en Finalizar .

Ahora necesitamos agregar una clase Java, que es tan fácil como agregar un paquete Java.

Después de darle un nombre, asegúrese de que las siguientes opciones estén marcadas:

  1. público
  2. público estático vacío principal (String args [])

Después de crear una nueva clase, aparecerá en el Espacio de trabajo donde puede escribir o copiar el código.

¡Felicidades! Acaba de terminar de escribir su primera aplicación Java en Eclipse. ¿No fue tan difícil?

Pruebas

Las pruebas son tan importantes como el desarrollo de la aplicación porque su aplicación será inútil si no se ejecuta correctamente o muestra errores. Afortunadamente, hay un marco de prueba integrado en Android Framework, que puede usar para probar todos los aspectos de su aplicación. Las herramientas del SDK también pueden ayudar a configurar y probar aplicaciones. SDK lo ayudará a probar diferentes aspectos de su aplicación sin importar si planea ejecutar sus pruebas dentro de un emulador o cualquier dispositivo Android.

Recomendaré usar ADT para el proceso de prueba, ya que es comparativamente más fácil que las otras herramientas. Con ADT, puede crear fácilmente un proyecto de prueba y vincularlo a la aplicación bajo prueba. Lo mejor de ADT es que agrega automáticamente el elemento necesario en el archivo de manifiesto del paquete de prueba.

Espero que esto te pueda ayudar.

Gracias.

Comenzando

Pasé todo un día y medio leyendo la excelente documentación para desarrolladores de Android e intentando hackear una aplicación rápida ‘droide’.

Me sorprendió encontrar que la sección de Fundamentos de la aplicación realmente tenía sentido para mí. Parece haber una arquitectura clara con pautas de diseño establecidas para que los desarrolladores las sigan. Supongo que esto no debería ser realmente una sorpresa, pero años de pirateo con interfaces de usuario web con arquitecturas MVC mal implementadas deben haberme dejado pensando que todos los marcos son menos “marco” y más “trabajo”.

Preparar
Recuerdo el desastre de tratar de hacer que mi primer JDK funcionara en mi 486, ¡qué pesadilla! ¿Y tener Tomcat 3 instalado y funcionando? Olvídalo. También recuerdo la última vez que hice una puñalada seria al aprender una nueva tecnología. Intenté desarrollar una aplicación Grails / Groovy en Eclipse.

Instalar el SDK en mi Mac fue sorprendentemente simple, especialmente teniendo en cuenta que soy nuevo tanto en OSX como en el desarrollo móvil. No sé si es porque el desarrollo de Android ha sido bien pensado y respaldado, o si es una función tanto de la madurez de la industria como de mi propia experiencia.

La integración con IntelliJ fue mucho más ingeniosa de lo que esperaba, especialmente porque estoy usando la edición comunitaria gratuita. No recuerdo los pasos exactos para decirle que quería crear un proyecto de Android, pero debe haber sido ridículamente fácil; de lo contrario, recordaría el trauma. Recuerdo una pequeña confusión sobre la instalación de la plataforma Android: no había entendido la diferencia entre instalar el SDK y luego instalar una API específica para él. Pero la documentación y la aplicación de Android me pusieron en el camino correcto al final. Y luego, cuando hice clic en el botón “Ejecutar” en IntelliJ, ¡listo! ¡Apareció el emulador y allí estaba mi aplicación!

Me encantó el emulador. Tenía una idea confusa de que tendría que conectar mi propio teléfono a la computadora portátil para ver mi aplicación. En cambio, el emulador se parece lo suficiente a mi teléfono real para darme una respuesta decente sobre cómo se comportará la aplicación. La desventaja es que estaba tratando de jugar con la cámara, y no podía ver cómo funcionaría realmente en el emulador, pero tuve una idea justa.

¿Funcionó?

Logré ejecutar una aplicación rudimentaria, con un botón y texto descriptivo (no se trata de ganar ningún premio). Se suponía que el botón debía iniciar el visor de la cámara, pero mis primeros intentos solo resultaron en la notificación de bloqueo. No tardé mucho en descubrir cómo usar logcat para ver el seguimiento de la pila y ver que no había configurado los permisos correctamente para usar la cámara, así que busqué en el ejemplo CameraPreview en APIDemos para descubrir cómo configurar el AndroidManifest.xml correctamente, y sorprendentemente, ¡todo funcionó!

¿Alguna desventaja?

Me sorprendió (y un poco decepcionado) la cantidad de configuración XML. He visto muchos Spring y Ant XML malvados en la empresa y pensé que los frameworks se estaban alejando de eso. El manifiesto que puedo entender, supongo, pero me pareció un poco extraño definir la interfaz de usuario en XML. Parecía una idea tardía después de toda la arquitectura bien definida detrás de escena.

Pero tal vez esto tenga más sentido para mí a medida que desarrolle más mi aplicación.

En resumen

  • Me sorprendió gratamente poder lograr que una aplicación de Android (aunque sea muy básica) funcione en solo unas pocas horas.
  • El desarrollo en IntelliJ fue mucho más fácil de lo que esperaba.
  • La documentación es realmente muy buena.

Veremos cómo me siento al respecto cuando empiece a intentar hacer más que una simple aplicación de ejemplo.