Programación Android. Rafael Morón Abad rafaelmoron@gmail.com



Documentos relacionados
Programación Android. Rafael Morón Abad

Práctica 7: Invocación Web Services con REST

Programación Android. Rafael Morón Abad

Desarrollo de Aplicaciones para Android

CODIGO PROYECTO: AppPixelproServicioWeb Proyecto Android - Servicio Web

Federico Peinado

APLICACIONES MÓVILES NATIVAS. Sesión 8: Arquitectura de las aplicaciones Android

Práctica 2: Java Remote Method Invocation (RMI)

MODELO DE IMPLEMENTACIÓN

Almacenamiento de datos. JOSE LUIS BERENGUEL GÓMEZ Febrero 2012

Java RMI. Sistemas Distribuidos Rodrigo Santamaría

ATLAS MANUAL DE INTEGRACIÓN Cliente del Servicio de SMS

Parsear HTML con htmlparser para Android Guillem Pérez

Sitemap de texto plano (sin formato)

Programación Android. Rafael Morón Abad

ANEXO III. Creación de plantillas e imagenes en CloudStack y subida de ficheros vhd e iso.

Aplicación Android de Asistencia al Caminante

MANUAL DE USUARIO. esatje CASILLERO ELECTRO NICO

CREAR UN SERVICIO WEB BASICO CON JAVA AXIS2. Víctor J. Sosa

Desarrollo de Servicios Web con JBuilder

Curso de programación en Android. 19/Junio/2012 Ramón Alcarria

Practica 11: Conexión de Java con Bases de datos Access

Squipy v Introducción

Programación para redes con Java

Programación orientada a objetos

Documento de trabajo Fundació Antoni Tapies

Sockets en Java. La Creatividad proviene de un conflicto de ideas. Uso de Sockets

Programación Orientada a Objetos con Java

Configuración servidor Tomcat

Programación Orientada a Objetos II. La Plataforma JDBC

Práctica 6 - Página Web

Práctica 5: Common Object Request Broker Architecture CORBA

1. Visión general de RMI

Seguridad de la aplicación para servlets y JSP (página activas java)

1. Creación del repositorio

[4 ]Instalación y configuración básica de drupal.

MANUAL DE INSTALACIÓN Y CONFIGURACIÓN

Sesión 17. Servicios web RESTful

SISTEMAS DE NOMBRES DE DOMINIO

UNIVERSIDAD POLITÉCNICA DE PACHUCA SOCKETS EN JAVA

Práctica 1: Instalación de un servidor de aplicaciones web y diseño de la vista de una aplicación

Implementación CAPÍTULO 4

Qué es un servicio de Proxy?

MANUAL COPIAS DE SEGURIDAD

Tutorial Servicios Web

Mi propuesta consiste en crear un portal Web que contemple las siguientes funcionalidades:

DOCENTES FORMADORES UGEL 03 PRIMARIA

Instituto Tecnológico Las Américas (ITLA) Sistemas Operativos 3 (SO3) Daniel Alejandro Moreno Martínez. Matrícula:

Identificadores, palabras reservadas, tipos de datos, operadores aritméticos y el sistema estándar de salida en Java

Elastix Web Services (WSDL) Manual de Usuario

EZ382A-FW. Contadores de Energía trífásicos, Lingg&Janke

Programación Android. Alejandro Alcalde. elbauldelprogramador.com

API de java. ( Guía de alumno Laboratorio 9. Recursos disponibles en moodle para este día.

Vicepresidente Regional

CORPORACION UNIVERSITARIA AUTONOMA DEL CAUCA PROGRAMA DE INGENIERIA DE SISTEMAS 2o Periodo de 2014 MATERIA: ELECTIVA IV (MEJORAMIENTO DE PROCESOS)

SOLUCION PARCIAL TASK SCHEDULER. Task Scheduler

1.- FUNDAMENTOS FUNCIONAMIENTO GENÉRICO JAVA SOCKETS Creación de Streams de Entrada...7

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

WINDOWS : TERMINAL SERVER

Especificación WebService para:

Módulo 1: Creación de un juego en Flash para Android

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

CFGM. Servicios en red. Unidad 5 Servicio FTP. 2º SMR Servicios en Red

Desarrollo de Servicios Web con JBuilder

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez

Guía de integración del módulo de Redsys en Prestashop

ACCESO AL SERVIDOR EXCHANGE MEDIANTE OWA

FRAMEWORK 2 Creación de Servicios Web

Uso de SurveyMonkey Guía de capacitación.

Luego lleve el cliente a otra máquina y ejecute desde ahí usando el nombre de la máquina del servidor.

Manual Terabox. Manual del usuario. Versión Telefónica. Todos los derechos reservados.

Sockets en Java. Prof. Wílmer Pereira Universidad Simón Bolívar

FTP. File Transfer Protocol. Protocolo De Transferencia De Archivo. Administración de Redes de Computadores. Ficha:

Manual del usuario y de referencia de MobileTogether Client

DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA

TRANSFERENCIA DE FICHEROS FTP

Tutorial: Python + Soap Web Service. Daniel Montenegro Cordero

Examen de Redes - ETSIA 9 de septiembre - Primer Parcial

QUE ES UN SERVIDOR DNS POR: ING-ESP PEDRO ALBERTO ARIAS QUINTERO. Este Es un documento donde se comentan algunos aspectos de un servidor DNS

Instalar y configurar W3 Total Cache

MANUAL DE CONEXIÓN SFTP A PÁGINAS WEB ALOJADAS EN SERVIDOR: CAMPUS.USAL.ES

TEMA 4: EMPEZANDO A NAVEGAR ESCUELA UNIVERSITARIA DE INFORMÁTICA. Raúl Martín Martín

Manual del Protocolo XML-RPC de Mensajería Negocios

Queremos asegurarnos de que tu sitio aparezca en los resultados de búsqueda.

Tutorial 1: Desarrollo de un plugin

Curso: Programación con JAVA SE Estándar Edition.

Curso PUDE. Desarrollo de Aplicaciones Móviles en Android. A. Descripción. Ejercicio Avanzado B: Web Services y Ejecución en Segundo plano

GESTIÓN DE EXCEPCIONES EN JAVA. CAPTURA CON BLOQUES TRY CATCH Y FINALLY. EJEMPLOS RESUELTOS. (CU00927C)

Según quien sea la entidad que gestione el equipo o dominio desde donde se envían las cookies y trate los datos que se obtengan, podemos distinguir:

Las clases Java Socket y ServerSocket

Visor OGC de la Red de Información Ambiental de Andalucía

Fuente:

Person IP CRM Manual MOBILE

Cómo instalar fácilmente tu WordPress tras contratar un hosting en Hostalia

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Práctica sobre compartición de instancias remotas.

Anexo B. Comunicaciones entre mc y PC

Transcripción:

Programación Android Rafael Morón Abad rafaelmoron@gmail.com

APIs para red Android con9ene el paquete java.net. La clase base para acceso a red es HApURLConnec9on. Para acceder a Internet, se requiere el permiso android.permission.internet. Debe evitarse realizar accesos a Internet desde el hilo de Interfaz de Usuario. En Android 3.0 se pueden establecer polí9cas que no permitan a la aplicación hacer cosas incorrectas (Modo Estricto), entre ellas el acceso a Internet desde el hilo de Interfaz de usuario.

Modo Estricto Para Android 3.0 o superior (API 11), se pueden relajar las restricciones del modo estricto.! @Override public void oncreate(bundle savedinstancestate)! {!!!!StrictMode.ThreadPolicy policy = new StrictMode.!!!ThreadPolicy.Builder().permitAll().build();!!StrictMode.setThreadPolicy(policy);!!! }!

1 - HApURLConnec9on Es un cliente HTTP. Hay otros clientes, pero este es el recomendado por el equipo de desarrollo de Android. Por ejemplo, recuperamos la página de desarrollo de Android.! URL url = new URL("http://developer.android.com/");! HttpURLConnection urlconnection = (HttpURLConnection) url.openconnection();! try {! InputStream in = new BufferedInputStream (urlconnection.getinputstream());! readstream(in);! finally {! urlconnection.disconnect();! }! }!

2 - DefaultHApClient Es el cliente HTTP de la librería de Apache, contenida en Android. No es segura a hilos. Ejemplo de acceso a red:! HttpClient client = new DefaultHttpClient();! HttpGet request =!!new HttpGet("http://developer.android.com");! HttpResponse response = client.execute(request);! // Get the response! BufferedReader rd = new BufferedReader(new InputStreamReader(!!response.getEntity().getContent()));! String line = "";! while ((line = rd.readline())!= null) {!!textview.append(line);! }!

3 - AndroidHApClient Es una implementación de DefaultHApClient específica para Android. Es segura a hilos. Está disponible desde Android 2.2 Froyo (API 8). Se puede obtener una instancia mediante:!public static AndroidHttpClient newinstance!(string useragent);! siendo useragent la cadena que iden9fica a nuestra aplicación como navegador. Podemos usar cualquier valor

Y para los accesos no- HTTP? Android 9ene la clase java.net.urlconnec9on, que permite acceder a recursos mediante otros protocolos. Los protocolos soportados na9vamente por Android a través de esta clase son: File, FTP, HTTP, HTTPS y Jar. Podemos registrar otros manejadores para estos u otros protocolos mediante: URL.setURLStreamHandlerFactory!!(URLStreamHandlerFactory factory)!

Ejemplo de acceso no- HTTP Recuperar un fichero via FTP: URL url = new URL!!!("ftp://mirror.csclub.uwaterloo.ca/index.html");! URLConnection urlconnection = url.openconnection();! InputStream in = new BufferedInputStream (urlconnection.getinputstream());! try {! }!!readstream(in);!!finally {!!!in.close();!!}!

Caso par9cular: Actualización Si publicamos una aplicación en Android Market o cualquier otra 9enda de aplicaciones, estas proporcionan un mecanismo de actualización bien soportado por Android. Pero muchas aplicaciones no son públicamente accesibles, sobre todo las dirigidas a grupos cerrados o a la ges9ón u opera9va interna de un organismo o empresa. Por eso explicaremos un caso prác9co de actualización. Fuente: hap://blog.js- development.com/2011/02/coding- update- func9onality- for- your.html

Versionado de la Aplicación Hay dos atributos del Manifiesto.xml que nos indican la versión: android:versioncode Integer. Representa la versión del código o el número de la release. android:versionname String. Una cadena que representa un número de versión que se mostrará a los usuarios.

Versionado de la Aplicación (II) <?xml version="1.0" encoding="utf- 8"?> <manifest xmlns:android=" http://schemas.android.com/apk/res/ android" package="com.ejemplo.tuapp" android:versioncode="106" android:versionname="1.6.109 dev">... </manifest>

Lectura del código de la aplicación public static int getversioncode PackageManager pm = (Context context) { context.getpackagemanager(); try { PackageInfo pi = pm.getpackageinfo (context.getpackagename(), 0); } return pi.versioncode; } catch (NameNotFoundException ex) {} return 0;

Publicar actualización disponible Una forma de publicar las actualizaciones puede ser: 1. Se coloca el paquete.apk con la aplicación en un servidor accesible via Internet (p.e. Dropbox). 2. Se coloca un fichero de texto con el código de versión de la úl9ma actualización disponible. Se puede descargar el fichero.apk y obtener de ahí la versión, pero eso podría generar mucho tráfico según el comportamiento de la caché de archivos de Internet.

Detectar actualización disponible 1. La aplicación descarga periódicamente el fichero con la versión 2. Se compara la versión disponible con la actual 3. Si la disponible es más reciente, se propone al usuario la actualización, con un código similar a este: Intent updateintent = new Intent (Intent.ACTION_VIEW, Uri.parse( http://ubicacion/app.apk )); startactivity(updateintent);