Cómo crear una aplicación de Android: todo lo que necesita saber

Cómo crear una aplicación de Android: todo lo que necesita saber
Esta guía está disponible para descargar como PDF gratuito. Descarga este archivo ahora . Siéntase libre de copiar y compartir esto con sus amigos y familiares.

Bienvenido a la guía de MakeUseOf para crear su propia aplicación de Android. En esta guía, veremos por qué le gustaría crear una aplicación de Android propia, algunas opciones que tiene para crearla y cómo ponerla a disposición de otros.





Introducción al desarrollo de Android

Hay dos formas principales de desarrollar una aplicación para Android. La primera es escribirlo desde cero, probablemente en Java. Pero esto, por supuesto, asume que ya saber Java o tenga la paciencia de aprenderlo antes de sumergirse. Pero, ¿qué pasa si tiene ganas de empezar de inmediato?





La otra opción es uno de los creadores de aplicaciones de apuntar y hacer clic en el mercado. Muchos de estos usuarios empresariales se dirigen (y vienen con una etiqueta de precio empresarial). Pero el MIT ofrece su 'App Inventor', una herramienta en línea que le permite crear su aplicación visualmente. Puede lograr algunas cosas interesantes con App Inventor, que lo mantendrá ocupado hasta que pueda profundizar en Java y acceder a todas las potentes funciones de la plataforma Android.





En las secciones siguientes, crearemos una versión prototipo de una aplicación simple de 'bloc de notas', que almacenará el texto que escriba en ella. Primero haremos esto en App Inventor y obtendremos una vista previa de los resultados en un emulador de Android. Luego, ampliaremos esta aplicación con la capacidad de seleccionar entre varios archivos, convirtiéndola en un 'bloc de notas'. Para este tipo de mejora, necesitaremos sumergirnos en Java y Android Studio.

¿Listo? Hagámoslo.



¿Por qué desarrollar para Android?

Existen varias razones por las que querría crear su propia aplicación de Android, que incluyen:

  • Necesidad : Es la madre de la invención, después de todo. Tal vez después de buscar en Play Store la aplicación de sus sueños, se dé cuenta de que es algo que necesitará construir usted mismo porque nadie más lo ha hecho todavía.
  • Comunidad : Desarrollar algo útil y ponerlo a disposición de forma gratuita (especialmente como código abierto) es una excelente manera de participar en la comunidad de Android y / o FOSS. Sin contribuciones de código abierto, no habría Linux y sin Linux no habría Android (o al menos no Android como lo conocemos). ¡Así que considere retribuir!
  • Aprendiendo : Hay pocas formas mejores de comprender una plataforma que desarrollarla. Podría ser para la escuela o tu propia curiosidad. Y bueno, si al final puedes ganar un par de dólares, mucho mejor.
  • Monetización : Por otro lado, tal vez esté haciendo esto para ganar dinero desde el principio. Si bien una vez se consideró que Android era el distrito de ingresos por aplicaciones de 'alquiler bajo', esto ha ido cambiando lentamente. Business Insider reportado en marzo que se espera que los ingresos de Android superen a iOS por primera vez en 2017.
  • Añadir : Los desarrolladores a menudo crean aplicaciones en general como una forma de promocionar, acceder o complementar un producto o servicio existente, como las aplicaciones complementarias de la consola y la propia aplicación MakeUseOf (ya no está disponible).

Cualquiera sea su razón, el desarrollo de aplicaciones desafiará sus habilidades de diseño, técnicas y lógicas. Y el resultado de este ejercicio (una aplicación funcional y útil para Android) es un gran logro que puede servir como pieza de cartera.





Existen muchas vías para crear su aplicación, incluidos diferentes kits de herramientas, lenguajes de programación y medios de publicación . En un nivel alto, estos se dividen en las siguientes dos categorías.

Aplicaciones de apuntar y hacer clic

Si es un novato en el desarrollo, existen entornos que le permiten crear una aplicación de Android de la misma manera que crearía una presentación de Powerpoint. Puede seleccionar controles como botones o cuadros de texto, colocarlos en una pantalla (como se muestra en la imagen a continuación) y proporcionar algunos parámetros sobre cómo deben comportarse. Todo sin escribir ningún código.





Este tipo de aplicaciones tienen la ventaja de una curva de aprendizaje poco profunda. Por lo general, puede saltar directamente y al menos comenzar a diseñar su pantalla. También eliminan mucha complejidad de la aplicación, ya que están diseñados para manejar detalles técnicos (como tipos de objetos o manejo de errores) detrás de escena. Por otro lado, esa simplicidad significa que está a merced del creador de la herramienta en cuanto a qué funciones son compatibles. Además, muchas de estas herramientas están dirigidas a grandes empresas y pueden resultar caras.

Una excepción es la aplicación web App Inventor del MIT, que es funcional y gratuita. Después de iniciar sesión con una cuenta de Google, puede hacer clic en una aplicación en un par de minutos y obtener una vista previa en su teléfono o mediante un emulador de Android.

Escribir desde cero

La otra opción es escribir tu aplicación desde cero. Esto probablemente sea diferente de lo que estás imaginando, no es como lo muestran las películas.

Es escribir el código una línea a la vez en los archivos de origen y luego compilarlos en una aplicación ejecutable. Si bien puede parecer aburrido, en realidad, dedica mucho más tiempo a la programación en diseño o pensando en cómo deberían funcionar las cosas. Pregúntele a la mayoría de los desarrolladores y le dirán que dedican solo del 10 al 15% de su tiempo a la entrada de código. Por lo tanto, pasará la mayor parte del tiempo soñando despierto (productivamente) sobre lo que debería hacer su aplicación.

Puede codificar aplicaciones de Android de dos formas diferentes. La forma 'estándar' es escribir aplicaciones en Java, consistentemente uno de los lenguajes más populares del mundo, aunque Google está agregando Kotlin como otra opción. Para las aplicaciones de alto rendimiento, como los juegos, tiene la opción de escribir en un idioma 'nativo' como C ++. Estas aplicaciones se ejecutan directamente en el hardware de su dispositivo Android, a diferencia de las aplicaciones 'normales' basadas en Java que se ejecutan en la máquina virtual Dalvik. Por último, hay formas de 'envolver' las aplicaciones web (utilizando kits de herramientas como Xamarin de Microsoft o Native React de Facebook) para distribuirlas como aplicaciones móviles que parecen 'nativas'.

Si bien los entornos de desarrollo integrados (IDE) manejan algunos de los elementos rutinarios de la programación, comprenda que la curva de aprendizaje de este método es empinada. Cualquiera que sea el idioma que elija, deberá estar versado en sus conceptos básicos. Invertir este tiempo por adelantado es un inconveniente de este método, en el sentido de que no podrá comenzar el desarrollo de su aplicación de inmediato. Pero es una ventaja a largo plazo, ya que las habilidades que aprende se pueden aplicar en otros lugares. Aprenda Java y podrá desarrollar para aplicaciones de escritorio y del lado del servidor (incluidas las basadas en la web) además de las aplicaciones de Android.

¿Qué opción es mejor para su proyecto?

Entonces, ¿cuál es la mejor avenida? Esto es demasiado subjetivo para responder a todos, pero podemos generalizarlo de la siguiente manera. Si tiene curiosidad pero solo está 'jugando', quédese con los creadores de aplicaciones de apuntar y hacer clic. Te ayudarán a eliminar esa picazón creativa sin requerir ningún 'trabajo de curso'. Pero si la idea de esos cursos no le asusta, considere tomar el camino más largo y aprender un lenguaje de programación. La inversión dará sus frutos de muchas otras formas en el futuro.

Además, ¡considere usar ambos! Los constructores de apuntar y hacer clic son una manera excelente de armar rápidamente un prototipo o 'prueba de concepto'. Úselos para trabajar con algunos de los detalles (como el diseño y el flujo de la pantalla), ya que son mucho más rápido para moverse en un entorno controlado por el mouse. Luego, vuelva a implementarlos en Java si es necesario para aprovechar su flexibilidad.

Adoptaremos precisamente ese enfoque en esta guía. Lo haremos:

  1. Prototipo nuestra aplicación, un 'bloc de notas' que almacenará texto en un archivo para usted, utilizando App Inventor del MIT.
  2. Reimplementar esto en Java (con un poco de ayuda del IDE de Android Studio de Google), luego continúe con ampliar la aplicación para permitirle seleccionar entre varios archivos, por lo que es más un 'bloc de notas'.

Muy bien, basta de hablar. En la siguiente sección, nos prepararemos para codificar.

Preparándose para crear su aplicación

No se sumerja de lleno todavía, primero necesita algunos conocimientos y algo de software.

Conocimiento que necesitará

Antes de comenzar a instalar algún software, debe tener algunos conocimientos antes de comenzar. Lo primero y más importante es ¿Qué se supone que debe hacer? Esperar hasta tener un concepto claro para su aplicación antes de comenzar el desarrollo puede parecer un hecho, pero se sorprendería. Así que tómate un tiempo para trabajar en este concepto, incluso tomando algunas notas sobre el comportamiento y dibujando algunas pantallas. Primero, tenga una imagen relativamente completa de su aplicación.

A continuación, mire en lo que es posible. Por ejemplo, imagina que la imagen ideal de tu aplicación es algo que te permita grabar en video toda tu vida para la posteridad. usted pueden crea una aplicación que capture video. usted hipocresía cree uno que almacene cada momento de su vida en su dispositivo (almacenamiento insuficiente). Sin embargo, tu pueden Intente descargar parte de este almacenamiento en la nube, aunque llevará tiempo desarrollarlo y eso tiene sus propias limitaciones (¿qué sucede cuando no tiene acceso a la red?). Aquí es donde examinará algunos de los detalles técnicos y podrá informar decisiones como si codificará desde cero o no.

Por último, vale la pena saberlo que hay ahí fuera ya. Si solo busca aprender o contribuir a la comunidad, ¿existe un proyecto de código abierto como el suyo? ¿Podrías bifurcar ese proyecto como punto de partida? O mejor aún, ¿desarrollar tu mejora y aportarla? Si está buscando ganar dinero, ¿cómo es su competencia? Si escribe una aplicación de reloj despertador simple y espera ganar un millón de dólares con ella, será mejor que traiga algo especial a la mesa.

Como se ha comentado, crearemos un bloc de notas simple, que recopila y guarda parte del texto que ingresa. Y al hacerlo, estaremos rompiendo las reglas anteriores, ya que existen muchas aplicaciones para tomar notas de Android, tanto abiertas como fuente cerrada . Pero supongamos que esto se convertirá en una aplicación mucho más compleja más adelante. Tienes que empezar por alguna parte.

Ahora obtendremos parte del software que necesitará.

Preparación para desarrollar con App Inventor

No es necesario instalar nada para utilizar la herramienta App Inventor. Es una aplicación web y puede acceder a ella en su totalidad a través del navegador. Cuando visite el sitio, verá un botón en la esquina superior derecha para ¡Crea aplicaciones! Si actualmente no ha iniciado sesión en una cuenta de Google, al hacer clic en este, se le dirigirá a una página de inicio de sesión.

De lo contrario, debe ir directamente a la aplicación Inventor's Mis proyectos página.

En este punto, considere dónde desea probar su aplicación. Si eres aventurero, puedes probarlo en tu teléfono o tableta instalando la aplicación Companion de Play Store . Entonces ya está todo listo: necesitará un proyecto en ejecución para ver realmente cualquier cosa en su dispositivo, pero llegaremos a eso más adelante.

Alternativamente, puede usar el emulador para probar su aplicación en su computadora. Descargue e instale el emulador para su sistema operativo desde esta página . La siguiente imagen muestra la instalación de la aplicación en Linux, pero la versión adecuada debería instalarse sin problemas también en Windows o Mac.

Puede iniciar el emulador ejecutando el comando 'aiStarter'. Esto comienza un proceso de fondo que conecta su emulador (local) al App Inventor (basado en la nube). Los sistemas Windows le proporcionarán un acceso directo, mientras que se iniciará automáticamente para los usuarios de Mac al iniciar sesión. Los usuarios de Linux deberán ejecutar lo siguiente en una terminal:

que es la zona ar en samsung
|_+_|

Una vez que se está ejecutando, puede probar la conexión haciendo clic en el Emulador artículo en el Conectar menú. Si ve que el emulador gira (como se muestra en la imagen a continuación), está listo para comenzar.

Instalación de Android Studio

Si planea desarrollar algunos programas simples, App Inventor puede ser todo lo que necesite. Pero después de jugar con él por un tiempo, puede chocar contra una pared, o puede que sepa que usará algunas funciones que App Inventor no admite (como la facturación dentro de la aplicación). Para ello, necesitará tener instalado Android Studio.

Ahora, el entorno de desarrollo oficial aprobado por Google, Android Studio es una versión del IntelliJ IDEA IDE de Java de JetBrains. Puede descargar una copia para su sistema operativo desde Página de desarrollador de Android de Google aquí . Los usuarios de Windows y Mac pueden iniciar el instalador utilizando un archivo EXE o una imagen DMG, respectivamente.

Los usuarios de Linux pueden usar el archivo ZIP, descomprimirlo donde quieran y ejecutar Android Studio desde allí (los usuarios de Windows / Mac también pueden hacer esto). De lo contrario, puede usar Marca de Ubuntu para descargar e instalar el paquete por usted. Si tiene la versión LTS más reciente (16.04 al momento de escribir este artículo), deberá agregar Ubuntu Make PPA a su sistema para obtener acceso a Android Studio:

|_+_|

Luego actualice su sistema con lo siguiente.

|_+_|

Por último, instale Ubuntu Make con este comando:

|_+_|

Una vez instalado, puede indicarle a Ubuntu Make que instale Android Studio por usted con el siguiente comando:

|_+_|

Después de mostrar el acuerdo de licencia, comenzará a descargar e instalar la aplicación base. Una vez que se complete e inicie Android Studio, un asistente lo guiará a través de otros dos pasos.

Primero, podrá elegir si desea una instalación 'Estándar' o algo personalizado. Seleccione la instalación estándar aquí, le permitirá comenzar más rápido.

Luego, recibirá un mensaje que le indicará que necesita descargar algunos componentes adicionales, y probablemente llevará algún tiempo.

Una vez que todo esté instalado, obtendrá una pequeña pantalla de presentación que le permitirá crear un nuevo proyecto, abrir uno existente o acceder a su configuración.

Sé que estás listo para ensuciarte las manos. Sin más preámbulos, construyamos algo.

Construyendo un Bloc de Notas de Android simple

Debido a que (por supuesto) nos sentamos y pensamos esto antes de saltar, sabemos que nuestra aplicación de Android constará de dos pantallas.

Uno permitirá al usuario 'editar ahora' o salir, y el otro hará la edición real. La primera pantalla puede parecer inútil, pero puede resultar útil más adelante a medida que agreguemos funciones. El texto capturado en la pantalla 'editar' se guardará en un archivo de texto sin formato, porque el texto sin formato es el que gobierna. Los siguientes wireframes nos dan un buen punto de referencia (y solo nos tomó 5 minutos prepararlos):

En la siguiente sección, lo construiremos con App Inventor del MIT.

Introducción a MIT App Inventor

El primer paso es crear un nuevo proyecto. Inicie sesión en App Inventor, luego haga clic en el Iniciar nuevo proyecto botón de la izquierda (también disponible en el Proyectos menú).

Obtendrá un cuadro de diálogo para darle un nombre.

Pero ahora está en la vista de diseñador de App Inventor y hay mucho que asimilar. Tomemos un momento para ver cada sección.

  1. La barra de título en la parte superior muestra el nombre de su proyecto ( muoScratchpad ); le permite agregar, eliminar y cambiar entre las pantallas de su aplicación (p. ej. Pantalla 1 ); y alterna entre App Inventor's Diseñador y Bloques vistas en el extremo derecho.
  2. los Paleta a la izquierda contiene todos los controles y widgets que usará. Están divididos en secciones como Interfaz de usuario y Almacenamiento ; usaremos ambos en nuestra aplicación. Veremos como el Paleta contiene diferentes elementos en el Bloques vista.
  3. los Espectador le muestra lo que está construyendo en estilo WYSIWYG.
  4. Componentes es una lista de elementos que forman parte de la pantalla actual. A medida que agregue botones, cuadros de texto, etc., aparecerán aquí. Algunos elementos 'ocultos', como referencias a archivos, también se mostrarán aquí, aunque en realidad no forman parte de la interfaz de usuario.
  5. los Media La sección le permite cargar activos que usará en su proyecto, como imágenes o clips de sonido. (No necesitaremos este).
  6. Finalmente, el Propiedades El panel le permite configurar el widget seleccionado actualmente. Por ejemplo, si está seleccionando un widget de imagen, puede cambiar su altura y ancho.

Disposición de su primera pantalla: 'Pantalla principal'

Juntemos el diseño de la pantalla 'principal' en Designer antes de continuar. Mirando el boceto, necesitaremos una etiqueta para el nombre de la aplicación, una línea de texto de ayuda, un botón para ir a la pantalla 'editar' y un botón para salir. Puedes ver el Interfaz de usuario paleta tiene todos los elementos que necesitamos: dos Etiquetas , y dos Botones . Arrástrelos a una columna vertical en la parte superior de la pantalla.

A continuación, configuraremos cada uno. Para las etiquetas, puede establecer elementos como cuál debería ser el texto, el color de fondo y la alineación. Centraremos ambas etiquetas, pero configuraremos el fondo del nombre de la aplicación en negro con texto blanco.

Es hora de ver cómo se ve realmente en un dispositivo. Cuando esté construyendo cosas, hágalo en pequeños pasos. No puedo enfatizar esto lo suficiente.

No cree una gran lista de cosas en su aplicación de una sola vez, porque si algo se rompe, se necesita un largo es hora de averiguar por qué. Si está buscando realizar una prueba en un teléfono real, puede iniciar su aplicación AI2 Companion y conectarse a App Inventor con el código QR o el código de seis caracteres proporcionado.

Para obtener una vista previa usando el emulador, asegúrese de haber iniciado el programa aiStarter descrito anteriormente, luego seleccione el Emulador artículo de nuevo del Conectar menú. De cualquier manera, después de una breve pausa, debería ver su aplicación en movimiento, luciendo algo parecido a lo que tiene en el Visor (el diseño real puede depender de las dimensiones de su dispositivo y emulador).

Dado que el título se ve bien, cambiemos el texto de los demás también y alineemos en el centro (esta es una propiedad de la pantalla, AlinearHorizontal , no el texto / botones). Ahora puede ver uno de los aspectos realmente interesantes de App Inventor: ¡todos sus cambios se realizan en tiempo real! Puede ver el cambio de texto, los botones ajustan su alineación, etc.

Haciéndolo funcional

Ahora que el diseño está hecho, agreguemos algunas funciones. Haga clic en el Bloques botón en la parte superior izquierda. Verá un diseño similar al de la vista Diseñador, pero tendrá algunas opciones diferentes organizadas en categorías. Estos son conceptos de programación en lugar de controles de interfaz, pero al igual que la otra vista, usará la función de arrastrar y soltar para unirlos como parte de su aplicación.

La paleta de la izquierda contiene categorías como Control , Texto , y Variables en la categoría 'Integrado'. Los bloques en esta categoría representan funciones que ocurrirán en gran parte detrás de escena, como el Matemáticas elementos que pueden realizar cálculos. Debajo de esta hay una lista de los elementos en su (s) pantalla (s), y los bloques disponibles aquí afectarán a esos elementos. Por ejemplo, al hacer clic en una de nuestras etiquetas, se muestran bloques que pueden cambiar el texto de esa etiqueta, mientras que los botones tienen bloques para definir lo que sucede al hacer clic en ellos.

Además de su categoría (representada por color), cada bloque también tiene una forma que representa su propósito. Estos se pueden dividir a grandes rasgos de la siguiente manera:

  • Puede pensar en elementos con un gran espacio en el medio, como el bloque 'si-entonces' que se muestra arriba, como elementos que manejan eventos . Cuando algo ocurre dentro de la aplicación, se ejecutarán las otras cosas dentro de ese espacio.
  • Los bloques planos con conectores son una de dos cosas. Los primeros son declaraciones , que son el equivalente de los comandos, los elementos que encajarán en los flujos anteriores. En el ejemplo anterior, el Hacer una lista bloque es una declaración, como es Cierra la aplicación .
  • La otra opcion es expresiones , que difieren solo ligeramente de las declaraciones. Donde una declaración podría decir 'establezca esto en' 42 '', una expresión sería algo como 'sume 22 a 20 y devuélvame el resultado'. En lo anterior, está en la lista es una expresión que se evaluará como verdadero o falso. Las expresiones también son bloques planos, pero es probable que tengan una pestaña en el lado izquierdo y una muesca en el derecho.
  • Finalmente, valores incluya números ('17' y '42' arriba), cadenas de texto ('Cosa 1' y 'Cosa 2') o verdadero / falso. Por lo general, solo tienen una pestaña a la izquierda, ya que son algo que proporciona a una declaración o expresión.

Ciertamente puede pasar por todos los guías y tutoriales en App Inventor. Sin embargo, está diseñado para que empieces a hacer clic y (literalmente) veas lo que encaja. En nuestra página inicial, tenemos dos elementos que necesitan atención (los botones), así que veamos qué se nos ocurre. Uno de estos (Botón2) cerrará la aplicación al hacer clic. Dado que se trata de una interacción con el botón. Podemos buscar bloques de botones y encontrar uno que comience con cuando Button2.click (o cuando se hace clic en el Botón 1). Esto es exactamente lo que queremos, así que lo arrastraremos al Visor.

Ahora, cuando se hace clic, queremos que la aplicación se cierre, lo que parece una función general de flujo de aplicaciones. Echando un vistazo al Integrado> Control sección, de hecho vemos una Cierra la aplicación Cuadra. Y arrastrándolo al espacio en el primer bloque, encaja en su lugar. ¡Éxito!

Ahora, cuando haga clic en el botón, la aplicación se cerrará. Probémoslo en el emulador. Nos muestra un error de que cerrar la aplicación no es compatible en el entorno de desarrollo, pero ver esto significa que funciona.

Construcción de la segunda pantalla: pantalla del editor

Ahora dirijamos nuestra atención a Button1.

Se supone que esto abrirá nuestro editor, ¡así que será mejor que nos aseguremos de que exista ese editor! Volvamos al Diseñador y creemos una nueva pantalla con la misma Etiqueta que la primera pantalla, una Caja de texto (establecido en 'llenar padre' para Ancho, 50% para Altura , y con Multilínea habilitado) para mantener nuestro contenido, y otro Botón (etiquetado '<< Save'). Now check that layout in the emulator!

aplicación para ver quién te bloqueó en fb

Antes de seguir adelante, sabemos que queremos ocultar el contenido del TextBox, que suena como Almacenamiento . Efectivamente, hay un par de opciones allí.

De estos, Expediente es el más sencillo y, dado que queremos texto sin formato, estará bien. Cuando pones esto en el Visor, notarás que no aparece. Expediente es un no visible componente, ya que funciona en segundo plano para guardar el contenido en un archivo en el dispositivo. El texto de ayuda le da una idea de cómo funciona esto, pero si desea que estos elementos estén visibles, marque la casilla Mostrar componentes ocultos en el Visor caja.

Cambie a la vista Bloques ahora: es hora de programar. El único comportamiento que necesitamos es cuando el '<< Save' button is clicked, so we'll grab our cuando Button1.click Cuadra. Aquí es donde App Inventor realmente comienza a brillar.

Primero, guardaremos el contenido del TextBox tomando el llamar File1.saveFile block, y proporcionándole el texto que queremos (usando TextBox1's TextBox1.text , que recupera su contenido) y un archivo para almacenarlo (solo proporcione una ruta y un nombre de archivo con un bloque de texto; la aplicación creará el archivo por usted si no existe).

También configuremos la pantalla para cargar el contenido de este archivo cuando se abre ( Editor> cuando Editor.initialize Cuadra). Debería llamar File1.ReadFrom que apunta a nuestro nombre de archivo. Podemos capturar el resultado de leer el archivo de texto usando Archivo> cuando File1.GotText , asigne ese contenido al TextBox usando el TextBox> establecer TextBox.Text en bloquear, y entregarle el recibir texto valor. Por último, después de guardar, queremos que un clic de Button1 nos envíe de regreso a la pantalla principal (un cerrar pantalla Cuadra).

El último paso es volver a la pantalla principal y programar el primer botón. Queremos que nos envíe a la pantalla del Editor, que es pan comido con el Control> abre otra pantalla bloque, especificando 'Editor'.

¿Que viene despues?

Ahora que tienes algo que funciona, ¿qué sigue? ¡Para potenciarlo por supuesto! App Inventor le brinda acceso a una amplia gama de funciones de Android. Más allá de las pantallas simples que acabamos de crear, puede agregar capacidades que incluyen reproducción de medios, envío de mensajes de texto o incluso una vista web en vivo a su aplicación.

Una de las primeras mejoras que me viene a la mente es la posibilidad de seleccionar entre varios archivos. Pero un rapido busqueda de internet revela que esto requiere algo de piratería informática suprema en App Inventor. Si queremos esta función, tendremos que profundizar en Java y el entorno de Android Studio.

Desarrollo en Java con Android Studio

Las siguientes secciones describirán, en un nivel muy alto, el desarrollo de nuestra aplicación scratchpad en Java. Vale la pena repetirlo nuevamente: si bien puede generar grandes dividendos en el futuro, aprender Java y Android Studio requiere una importante inversión de tiempo.

Entonces no habrá tanta explicación de lo que significa el código a continuación, ni debería preocuparse mucho por ello. La enseñanza de Java está más allá del alcance de este artículo. Lo que servirá es examinar qué tan cerca está el código Java de las cosas que ya hemos construido en App Inventor.

Comience por iniciar Android Studio y seleccione el Iniciar un nuevo proyecto de Android Studio artículo. Serás guiado por un mago que te preguntará un par de cosas. La primera pantalla solicita un nombre para su aplicación, su dominio (esto es importante si envía a la tienda de aplicaciones, pero no si solo está desarrollando para usted) y un directorio para el proyecto.

En la siguiente pantalla, configurará la versión de Android para apuntar. Seleccionar una versión más reciente le permitirá incluir las funciones más nuevas de la plataforma, pero podría excluir a algunos usuarios cuyos dispositivos no están actualizados. Esta es una aplicación simple, por lo que podemos quedarnos con Ice Cream Sandwich.

A continuación, seleccionaremos el predeterminado Actividad para nuestra aplicación. Las actividades son un concepto central en el desarrollo de Android, pero para nuestros propósitos, podemos definirlas como pantallas. Android Studio tiene un número que puede seleccionar, pero comenzaremos con uno en blanco y lo crearemos nosotros mismos. La pantalla posterior le permite darle un nombre.

Una vez que se lance el nuevo proyecto, tómate un momento para familiarizarte con Android Studio.

  1. La barra de herramientas superior tiene botones para una amplia variedad de funciones. El más importante para nosotros es el Correr , que compilará la aplicación y la lanzará en el emulador. (Adelante, pruébelo, funcionará bien). Hay otros como Ahorrar y Encontrar , pero funcionan a través de los atajos de teclado a los que todos estamos acostumbrados (Ctrl + S y Ctrl + F, respectivamente).
  2. La mano izquierda Proyecto El panel muestra el contenido de su proyecto. Puede hacer doble clic en ellos para abrirlos y editarlos.
  3. La región central es su editor. Dependiendo de lo que esté editando precisamente, esto puede estar basado en texto o gráfico, como veremos en un momento. Esto también puede mostrar otros paneles, como el panel Propiedades de la derecha (nuevamente, como App Inventor).
  4. Los bordes derecho e inferior tienen una selección de otras herramientas que aparecerán como paneles cuando se seleccionen. Hay cosas como un terminal para ejecutar programas de línea de comandos y control de versiones, pero la mayoría de estos no son importantes para un programa simple.

Portar la pantalla principal a Java

Comenzaremos reconstruyendo el scratchpad en Java. Mirando nuestra aplicación anterior, podemos ver que para la primera pantalla, necesitamos una etiqueta y dos botones.

En años anteriores, la creación de una interfaz de usuario en Android era un proceso minucioso que involucraba XML hecho a mano. Hoy en día lo haces gráficamente, como en App Inventor. Cada una de nuestras Actividades tendrá un archivo de diseño (hecho en XML) y un archivo de código (JAVA).

Haga clic en la pestaña 'main_activity.xml' y verá la siguiente pantalla (muy similar a la de un diseñador). Podemos usarlo para arrastrar y soltar nuestros controles: un Vista de texto (como una etiqueta) y dos Botones .

Conectemos el Salida botón. Necesitamos crear un botón en código y también gráficamente, a diferencia de App Inventor que maneja esa contabilidad por nosotros.

Pero igual que AI, la API de Java de Android utiliza el concepto de 'onClickListner'. Reacciona cuando un usuario hace clic en un botón al igual que nuestro viejo amigo el bloque 'when Button1.click'. Usaremos el método 'finish ()' para que cuando el usuario haga clic, la aplicación salga (recuerde, intente esto en el emulador cuando haya terminado).

Adición de la pantalla del editor

Ahora que podemos cerrar la aplicación, volveremos a rastrear nuestros pasos. Antes de conectar el botón 'Editar', creemos la actividad del editor (pantalla). Haga clic derecho en el Proyecto panel y seleccione Nuevo> Actividad> Actividad vacía y asígnele el nombre 'EditorActivity' para crear la nueva pantalla.

Luego creamos el diseño del Editor con un EditTextBox (donde irá el texto) y un botón. Ajustar el Propiedades de cada uno a tu gusto.

Ahora cambie al archivo EditorActivity.java. Codificaremos algunas funciones similares a las que hicimos en App Inventor.

Uno creará el archivo para almacenar nuestro texto si no existe, o leerá su contenido si existe. Un par de líneas crearán el EditTextBox y carga nuestro texto en él. Por último, un poco más de código creará el Botón y su onClickListener (que guardará el texto en el archivo y luego cerrará la Actividad).

Ahora, cuando lo ejecutemos en el emulador, veremos lo siguiente:

  1. Antes de la ejecución, no hay una carpeta en '/ storage / emulated / 0 / Android / data / [su dominio y nombre del proyecto] / files, que es el directorio estándar para datos específicos de la aplicación.
  2. En la primera ejecución, la pantalla principal aparecerá como se esperaba. Todavía no hay directorio como el anterior, ni nuestro archivo de bloc de notas.
  3. Al hacer clic en el Editar , se crea el directorio, al igual que el archivo.
  4. Al hacer clic Ahorrar , cualquier texto ingresado se guardará en el archivo. Puede confirmar abriendo el archivo en un editor de texto.
  5. Al hacer clic Editar de nuevo, verá el contenido anterior. Cambiándolo y haciendo clic Ahorrar lo almacenará, y haciendo clic en Editar de nuevo lo recordaré. Etcétera.
  6. Al hacer clic Salida , la aplicación terminará.

Mejora de la aplicación: seleccione su archivo de almacenamiento

Ahora tenemos una versión funcional de nuestro bloc de notas App Inventor original. Pero lo portamos a Java para mejorarlo. Incluyamos la capacidad de seleccionar entre varios archivos en ese directorio estándar. Una vez que hagamos esto, realmente lo haremos más bloc que solo un bloc de notas, por lo que crearemos una copia del proyecto actual usando las instrucciones aquí .

Usamos un Intent de Android para llamar a nuestra Actividad de Editor desde la principal, pero también son una forma conveniente de llamar a otras aplicaciones. Al agregar un par de líneas de código, nuestro Intent enviará una solicitud para aplicaciones de administrador de archivos responder. Esto significa que podemos eliminar una buena parte del código comprobando la creación del archivo, ya que el Intent solo nos permitirá buscar / seleccionar uno que realmente exista. Al final, nuestra actividad de editor sigue siendo exactamente la misma.

Conseguir que nuestro Intent nos devuelva un String (objeto de texto Java) que podamos empaquetar en nuestro Intent fue un desafío. Afortunadamente, cuando se trata de cuestiones de programación, Internet es tu amigo. A búsqueda rápida nos da un par de opciones, incluido el código que podemos pegar en nuestra aplicación.

Código cortesía de Desbordamiento de pila

Y con este pequeño cambio y un poco de código prestado, podemos usar una aplicación de navegador / administrador de archivos en el dispositivo para seleccionar el archivo para almacenar nuestro contenido. Ahora que estamos en 'modo de mejora', es fácil encontrar un par de mejoras útiles:

  • Podemos escoger de entre los archivos existentes, pero por el momento, retiramos nuestra instalación para crear ellos. Necesitaremos una función para que el usuario proporcione un nombre de archivo, luego cree y seleccione ese archivo.
  • Puede ser útil hacer que nuestra aplicación responda a las solicitudes de 'Compartir', de modo que pueda compartir una URL desde el navegador y agregarla a uno de sus archivos de notas.
  • Estamos tratando con texto sin formato aquí, pero el contenido más rico con imágenes y / o formato es bastante estándar en este tipo de aplicaciones.

Con la capacidad de acceder a Java, ¡las posibilidades son infinitas!

Distribución de su aplicación

Ahora que su aplicación está completa, la primera pregunta que debe hacerse es si desea distribuirla. Tal vez haya creado algo tan personal y personalizado que parece que no sería adecuado para nadie más. Pero le insto a que no piense de esa manera. Probablemente se sorprenderá de lo útil que es para los demás; como mínimo, es al menos una experiencia de aprendizaje que muestra lo que puede hacer un nuevo codificador.

Pero incluso si decide guardar su nueva creación para usted, aún necesitará algunos de los pasos a continuación para poder instalarlo en su dispositivo. Entonces, aprendamos cómo empaquetar su aplicación para compartir en forma de código fuente, así como un paquete instalable.

Distribución de código fuente

Independientemente del método que haya estado utilizando hasta este momento, ha estado modificando el código de fuente a lo largo del camino.

Si bien App Inventor hace un buen trabajo al ocultar el código real detrás de escena, los bloques y los widgets de la interfaz de usuario que ha estado moviendo representan código. Y el código fuente es una forma perfectamente válida de distribuir software, como bien puede atestiguar la comunidad de código abierto. Esta también es una excelente manera de involucrar a otros en su aplicación, ya que pueden tomar lo que ha hecho y desarrollarlo.

Obtendremos el código fuente de ambos entornos en un formato estructurado. Luego, cualquiera (incluidos nosotros mismos) puede importarlo fácilmente al mismo programa y comenzar a funcionar rápidamente.

Exportación de código fuente desde App Inventor

Para exportar desde App Inventor, es una simple cuestión de abrir su proyecto, luego desde el Proyectos menú, seleccione el Exportar el proyecto seleccionado (.aia) a mi computadora .

Esto descargará el archivo .AIA antes mencionado (presumiblemente 'Archivo de App Inventor'). Pero este es de hecho un archivo ZIP; intente abrirlo en su administrador de archivos favorito para inspeccionar su contenido.

cómo seleccionar todas las canciones en spotify

Observe que el contenido de la appinventor / ai_ [su ID de usuario] / [nombre del proyecto] carpeta son un archivo SCM y BKY. Esta no es la fuente JAVA que vimos en Android Studio, por lo que no podrá abrirlos en ningún entorno de desarrollo anterior y compilarlos. Sin embargo, usted (u otra persona) puede volver a importarlos a App Inventor.

Fuente de archivo de Android Studio

Obtener su proyecto de Android Studio en un formato de archivo es tan fácil como comprimir la carpeta del proyecto. Luego, muévalo a una nueva ubicación y ábralo desde la posición habitual. Archivo> Abrir elemento en el menú principal.

Android Studio leerá la configuración de su proyecto ( espacio de trabajo.xml ) y todo debería ser como antes.

Vale la pena señalar que archivar toda esa carpeta voluntad incluir algunos cruft, específicamente los archivos de la última compilación de su programa.

Estos se borrarán y regenerarán durante la próxima compilación, por lo que no son necesarios para mantener la integridad de su proyecto. Pero tampoco lo hacen daño, y es más fácil (especialmente para los desarrolladores principiantes) no empezar a jugar con qué carpetas deberían aparecer y cuáles no. Es mejor tomarlo todo en lugar de perder algo que necesite más adelante.

Distribución de paquetes de Android

Si desea darle una copia de su aplicación a alguien solo para que la pruebe, un archivo APK es su mejor opción. El formato estándar del paquete de Android debería ser familiar para aquellos que han salido de Play Store para obtener software.

Obtenerlos es tan fácil como archivar la fuente en ambos programas. Luego, puede publicarlo en un sitio web (como F-Droid) o entregárselo a algunas personas amigables para obtener sus comentarios. Esto lo convierte en una excelente prueba beta para las aplicaciones que planea vender más adelante.

Construyendo un APK en App Inventor

Dirígete al Construir menú y seleccione el Aplicación (guardar .apk en mi computadora) artículo. La aplicación comenzará a compilarse (evidenciado por una barra de progreso), y una vez que se complete, aparecerá un cuadro de diálogo para guardar el archivo APK. Ahora puede copiarlo y enviarlo al contenido de su corazón.

Para instalar la aplicación, los usuarios deberán permitir la instalación de software de terceros en la configuración del dispositivo. como se describe aquí .

Construyendo un APK en Android Studio

Crear un paquete de Android es igual de fácil en Android Studio. Bajo la Construir menú, seleccione Construir APK . Una vez que se completa la compilación, un mensaje de notificación le dará un enlace a la carpeta en su computadora que contiene la aplicación.

Distribución de Google Play

Configurar como desarrollador de Google es un proceso. Si bien debe considerarlo una vez que tenga algo de experiencia en su haber, no es algo que deba abordar de inmediato.

En primer lugar, tiene una tarifa de registro de $ 25. También tiene una serie de detalles técnicos que son algo difíciles de cambiar en un momento posterior. Por ejemplo, deberá generar una clave criptográfica para firmar sus aplicaciones y, si alguna vez la pierde, no podrá actualizar la aplicación.

Pero en un nivel alto, hay tres procesos principales que deberá realizar para que su aplicación ingrese a Play Store:

  1. Regístrese como desarrollador: Puede configurar su perfil de desarrollador (basado en una cuenta de Google) en esta página . El asistente lo guía a través de un proceso de registro bastante sencillo, que incluye la tarifa de $ 25 antes mencionada.
  2. Prepara la aplicación para la tienda: Las versiones del emulador de la aplicación que ha estado probando también son depuración versiones. Esto significa que tienen mucho código adicional relacionado con la resolución de problemas y el registro que no es necesario, e incluso pueden representar un problema de privacidad. Antes de publicar en la Tienda, deberá producir un versión de lanzamiento Siguendolo estos pasos . Esto incluye firmar su aplicación con la clave criptográfica que mencionamos anteriormente.
  3. Configure su infraestructura: También deberá configurar la página de la Tienda para su aplicación. Google proporciona una lista de consejos para configurar una lista que le proporcionará instalaciones (¡y ventas!). Su infraestructura también puede incluir servidores con los que se sincronizará su aplicación.
  4. Finalmente, si desea que le paguen, necesitará un perfil de pago. Este es uno de esos una vez y hecho detalles, así que asegúrese de saber cómo encajará todo antes de seguir adelante.

Resumen y lecciones aprendidas

Llegamos al final de la guía. Con suerte, esto ha despertado su interés en el desarrollo de Android y le ha dado algo de motivación para tomar su idea y desarrollarla. Pero antes de que bajes la cabeza y empieces a construir, repasemos algunas de las lecciones clave que aprendimos en las secciones anteriores.

  • Mirábamos dos caminos para crear su aplicación: constructores de apuntar y hacer clic y codificación desde cero en Java. El primero tiene una curva de aprendizaje más baja y ofrece una variedad justa (pero aún limitada) de funcionalidades. El segundo le permite crear casi cualquier cosa que se le ocurra y ofrece beneficios más allá del desarrollo de Android, pero lleva más tiempo aprenderlo.
  • Si bien cada uno tiene sus pros y sus contras, ¡Puedes usar ambos caminos! Los entornos de apuntar y hacer clic ofrecen una respuesta rápida para crear un prototipo de su aplicación, mientras que el segundo le permite reconstruirla para una mejora a largo plazo.
  • Si bien es tentador comenzar a trabajar en la aplicación en sí, se alegrará mucho más tarde si se toma un tiempo para diseña tu aplicación , incluyendo bocetos de la interfaz y / o documentación informal sobre sus funciones. Esto también puede ayudarlo a determinar si uno o ambos de los métodos anteriores son buenas opciones.
  • Una manera fácil de comenzar a desarrollar es diseñar los elementos de la interfaz de usuario y luego 'conectarlos' programando su funcionalidad. Si bien los desarrolladores experimentados pueden comenzar a codificar componentes de 'fondo', para los principiantes, es útil poder visualizar todo.
  • Al sumergirse en el código, no tenga miedo de buscar respuestas en la web. Realizar una búsqueda en Google con un par de palabras clave y un 'ejemplo de código' al final le dará buenos resultados.
  • Mientras construye, pruebe su trabajo poco a poco. De lo contrario, será muy difícil determinar cuál de las acciones de las últimas dos horas rompió su aplicación.

Con esto en mente, entre y comience a hacer realidad sus sueños de desarrollo de aplicaciones. Y si decides ensuciarte las manos, cuéntanos cómo te fue en los comentarios (por cierto, nos encantan los enlaces a las capturas de pantalla). ¡Feliz edificio!

Cuota Cuota Pío Correo electrónico Cómo acceder al nivel de burbuja integrado de Google en Android

Si alguna vez ha necesitado asegurarse de que algo esté nivelado en un apuro, ahora puede obtener un nivel de burbuja en su teléfono en segundos.

Leer siguiente
Temas relacionados
  • Android
  • Java
  • Programación
  • Desarrollo de aplicaciones
  • Forma larga
  • Guía de formato largo
  • Android
Sobre el Autor Aaron Peters(31 Artículos publicados)

Aaron ha sido un experto en tecnología como analista de negocios y gerente de proyectos durante quince años, y ha sido un usuario leal de Ubuntu durante casi el mismo tiempo (desde Breezy Badger). Sus intereses incluyen el código abierto, las aplicaciones para pequeñas empresas, la integración de Linux y Android y la informática en modo de texto sin formato.

Más de Aaron Peters

Suscríbete a nuestro boletín

¡Únase a nuestro boletín de noticias para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse