Android

¿Qué es?

Es un S.O. basado en linux y escrito en Java.

Versiones de Android

Android API

Todos los ejercicios de este curso

Descargar todos los ejercicios

Lecciones

Gradle

Error típico All libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 8.3.0, 11.4.2. Examples include com.google.android.gms:play-services-auth:8.3.0 and com.google.android.gms:play-services-base:11.4.2 Esto significa que debo actualizar las versiones de las librerías que son 8.3.0 a la versión 11.4.2, que es más actual. Además debo […]

Layouts

Primer proyecto File → new → Android → Android Proyect → Create new proyect in Workspace → Lo llamamos a_hola_mundo Esto crea un proyecto Android con un Activity que será el punto de inicio de la aplicación. Error típico: An SDK Target must be specified → Para solventarlo → window → […]

ItemList

Qué es una Lista Una lista en el contexto de Activity es la interfaz gráfica que nos permite navegar por una serie de datos. Usando RecyclerView MyAdapter.java res/values/countries.xml Content Provider Nos permiten acceder a la información de otras aplicaciones incluida en un dispositivo, por ejemplo, a la agenda telefónica. En […]

Almacenar info

Preferencias Las usamos para guardar pequeñas cantidades de información. Suelen ser datos que una aplicación debe guardar para personalizar la experiencia del usuario, por ejemplo información personal, opciones de presentación, etc. La información es almacenada en forma clave-valor en ficheros xml, en el dispositivo móvil: Ver las preferencias del emulador […]

SQLite

Ejecutaremos una vez el siguiente código para que la base de datos aparezca en el file explorer (data → data → nombreDelPaquete → databases) Para editar un fichero del file explorer (por ejemplo el archivo correspondiente a la base de datos sqlite) debo pulsar el icono correspondiente dentro del panel […]

Multimedia

Cargar una imagen con la librería picasso Cargar un sonido Cargar un video Enlace a leon.mp4 Hacer streaming de un video Habrá que dar permisos de conexión a internet en el: AndroidManifest.xml<uses-permission android:name=”android.permission.INTERNET”/> Usar cámara de fotos

Navigation Drawer

Para que el código funcione, debemos importar las siguientes librerías en gradle: Cargamos un activity que tendrá un layout que cargará dos componentes: El layout en el que se cargarán los fragments. El menú de navegación. activity_main_navigation_drawer.xml Este es el xml del documento en el que se cargarán los datos: […]

Dialogs

Alert dialog ProgressBar Dialog layout.xml Ejercicio: Progress Bar La barra de progreso que inicialmente estaba a cero debe ir aumentando progresivamente según hacemos click. Ejercicio: Personal dialog Cuando haga click sobre un botón, deberá aparecer un cuadro de diálogo personalizado. Creamos un layout llamado personal_dialog.xml para el dialog. Ejercicio:Toast – notificaciones instantáneas […]

Notificaciones

Básica El código para programar notifiaciones ha cambiado a partir de Android 8. Ejercicio: notificaciones Hacer que la notificación muestre una imagen Notificación que abre un activity PendingIntent Es un envoltorio de un Intent que puede necesitar ciertos permisos para ser ejecutado. Si la aplicación dónde se está ejecutando ya tiene […]

Servicios

Son códigos que se ejecutan en segundo plano, aunque la aplicación no esté abierta. Usar CounterTimer como Servicio Main.javastartService(new Intent(this, CountDownTimerService.class)); CountDownTimerService.javapublic class CountDownTimerService extends Service { public static CountDownTimer timer; @Nullable @Override public IBinder onBind(Intent intent) { return null; } @Override public void onCreate() { super.onCreate(); timer = new […]

Notificaciones push

El código de nuestra clase en Android sería el siguiente. Con este código obtendremos un deviceToken que habrá que pegar a nuestro código PHP. En condiciones normales, este token serán almacenado en la base de datos en el servidor:FirebaseInstanceId.getInstance().getInstanceId().addOnCompleteListener(new OnCompleteListener<InstanceIdResult>() { @Override public void onComplete(@NonNull Task<InstanceIdResult> task) { if(!task.isSuccessful()){ Log.w(“TOKEN”, […]

AsynTask

Tendremos que tener los siguientes dos permisos configurados: Petición GET con AsynTask Ejercicio: petición GET con AsynTask El código UPC que escribimos se lo mandaremos a la url Para probar podremos utilizar el código:upcCode=1234 Usaremos el permiso: Petición POST con AsyncTask Procesar un JSON Si quiero acceder a elementos de un array, […]

Mapas

Recomendación No probar ejercicios que impliquen geolocalización en el emulador. Unos funcionan, otros no, otros funcionan mal, etc. Geolocalización La podemos obtener por 3 medios: GPS: (el más preciso y lento (puede tardar incluso más de un minuto)). 2 metros de error. Red móvil: El móvil detecta 3 antenas, hace […]

Login

Login con Google Instalación Tendremos que loguearnos en la consola de Firebase Crear nuevo proyecto google-services.json Engranaje de settings -> Project Settings -> Download google-services.json En Android Studio cambiamos el modo de visualización del proyecto a Proyecto. Arrastramos el fichero creado (google-services.json) sobre la carpeta APP. Pegamos en el build.gradle del […]

Dibujar

Ejercicio – Dibujar un círculo res/layout/main.xml com.pablomonteserin.Vista.java La clase vista debe tener tres constructores:El primero es para crear la vista desde código. Los otros dos son para inflar la vista llamándola desde un fichero xml. Hay que procurar no hacer ninguna instancia e incluso tener el mínimo código posible dentro […]

Publicar

Publicar la aplicación en Google Play Eliminamos todas las llamadas a las trazas (Log). Si no lo hacemos, la aplicación funciona pero el usuario de la misma tendría acceso a las trazas mediante logCat. Android Manifest → Pestaña Application → Debuggable: false Android Manifest → Pestaña Manifest → Aumentamos “Version […]

Aviso Legal | Política de privacidad