sem08 android sise web serv

Upload: manuel-camacho-castro

Post on 07-Jan-2016

23 views

Category:

Documents


0 download

DESCRIPTION

Desarrollo de Android con web services

TRANSCRIPT

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    1

    SERVICIO WEB EN ANDROID

    Objetivo:

    Disea, implementa aplicaciones de Android consumiendo los servicios web

    Herramientas:

    Web Services IIS (Internet Information Services) ksoap2 Para Android Eclipse Para Android Jdk 8.0

    Ejercicio 1

    1. Crear una aplicacin de Android que permita sumar 3 nmeros diferentes consumiendo un servicio web

    Solucin 1

    INTERNET INFORMATION SERVICES

    1. En la unidad C:, dentro de la carpeta: inetpub / wwwroot

    2. Crear la siguiente carpeta:

    Crear una carpeta con el nombre: WebSumatoria

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    2

    3. Activar el IIS (Internet Information Services)

    4. Se muestra la siguiente pantalla:

    Digitar: IIS

    Clic en: Administrador de Internet Information Services (IIS)

    Clic derecho en: Default Web Site

    Clic en la opcin: Quitar

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    3

    5. Se muestra la siguiente pantalla:

    DIRECTORIO VIRTUAL

    1. En el panel: Conexiones, clic derecho en el icono: Sitios

    Clic en la opcin: Si

    Clic en la opcin: Agregar Sitio Web

    Nombre del sitio: VirtualSuma

    Clic en los 3 puntos consecutivos

    Seleccionar la carpeta: WebSumatoria

    Clic en: Aceptar

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    4

    2. Se muestra la siguiente pantalla:

    SERVICIO WEB

    1. Activar el Visual Studio como Administrador

    Clic en: Aceptar

    Directorio Virtual: VirtualSuma

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    5

    2. Se muestra la siguiente pantalla:

    3. De la barra de mens, seleccionar la opcin: Archivo

    4. Se muestra la siguiente pantalla:

    Clic en: Nuevo Sitio Web

    Clic en: Visual Basic

    Clic en: Net Framework 3.5

    Clic en: Servicio Web Asp Net

    Clic en: Http

    Clic en: Examinar

    Clic en: IIS Local Clic en: VirtualSuma

    Clic en: Abrir

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    6

    5. Clic en el botn: Aceptar 6. Renombrar:

    7. Se genera el siguiente mtodo web: Suma

    8. Grabar el proyecto 9. En el explorador de soluciones, clic derecho en el proyecto:

    10. Se muestra el siguiente mensaje:

    11. En el explorador de soluciones, clic derecho en el proyecto:

    Clic en: Generar Sitio Web

    Clic en: Publicar Sitio Web

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    7

    12. Se muestra la siguiente pantalla:

    13. Se muestra el siguiente mensaje:

    14. Clic derecho en: Services.asmx

    Clic en: Aceptar

    Clic en: Ver en el explorador

    Clic en el vnculo: Suma

    Ingresar los valores a los parmetros

    Clic en: Invocar

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    8

    15. Se muestra la siguiente pgina:

    APLICACIN ANDROID

    1. Crear una carpeta con el nombre: AndroidSW01 (En el escritorio) 2. Activar el Eclipse

    3. Se muestra la siguiente pantalla:

    Clic en: Browse

    Clic en la carpeta: AndroidSW01

    Clic en: Aceptar

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    9

    4. Se muestra la siguiente pantalla:

    5. Se genera un nuevo proyecto:

    Clic en: OK

    Clic en: New Android Application

    Application Name: AplicaSumaSW01 Project Name: SumaSW01

    Package Name: com.aplicaSumaSW01

    Seleccionar: Android 4.3

    Clic en: Next

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    10

    Clic en: Next Clic en: Next

    Clic en: Next

    Nombre de la Actividad: Ejemplo01

    Clic en: Finish

    Fondo de la actividad

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    11

    6. Diseo de la actividad:

    AGREGANDO EL ARCHIVO EXTERNO KSOAP2

    1. En la carpeta: Koas Para Android

    2. En el eclipse:

    Copiar el archivo: Ksoap2

    En la carpeta: libs pegar el archivo Ksoap

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    12

    3. Codificando en el archivo: Ejemplo01.java, se generan los siguientes objetos:

    4. Se vinculan los objetos de java y XML

    5. Cdigo del botn: Nuevo (En Java: btn1 / en XML: btnuevo)

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    13

    6. Cdigo del botn: Calcular (En Java: btn2 / en XML: btcalcular)

    Se Declara 4 variables:

    MTODO => Mtodo del web service a tratar

    NAMESPACE => El namespace declarado en el webservice, por defecto

    tempuri.org

    URL => La url con la que se comunicar.

    SOAP_ACTION => NAMESPACE + METODO

    7. Se declara un hilo con el nombre: nt

    Se declaran 2 variables La primera variable rs de tipo String La segunda variable Mtodo de tipo String la cual almacena el nombre del mtodo

    web

    Se declara una variable NameSpace de tipo String, la cual almacena el Namespace del Servicio Web

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    14

    8. Se declara la siguiente variable:

    Se genera la peticin (request) para el mtodo: Suma. Para ello se genera un nuevo

    objeto SoapObject pasndole el namespace y el nombre del mtodo web. A esta

    peticin tendremos que asociar los parmetros de entrada mediante el

    mtodo addProperty() al que pasaremos los nombres y valores de los parmetros

    (que en nuestro caso se obtendrn de los cuadros de textos)

    Se declara una variable: URL, la cual contiene la direccin Web, se puede invocar con el localhost o con el nmero de IP

    Se declara una variable NameSpace de tipo String, la cual almacena el Namespace ms el mtodo Suma

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    15

    9. Se genera al objeto: request de tipo: SoapObject

    Se genera el contenedor SOAP (envelope) y asociarle nuestra peticin. Para ello se

    crea un nuevo objeto SoapSerializationEnvelope indicando la versin de SOAP que

    vamos a usar (versin 1.1)

    Se Indica adems que se trata de un servicio web .NET activando su

    propiedad dotNet

    El objeto request, tiene 2 parmetros: NameSpace (Espacios de Nombres) Mtodo (Para El Mtodo Suma)

    Se importa la clase: SoapObject

    Con el mtodo: addProperty se agrega los parmetros v1, v2, v3 hacia el objeto request Los parmetros v1, v2, v3 sus valores provienen de los cuadros de textos: txt1, txt2 t txt3 respectivamente

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    16

    Se asocia la peticin antes creada a nuestro contenedor llamando al

    mtodo setOutputSoapObject().

    Se genera al objeto que se encargar de realizar la comunicacin HTTP con el servidor, de tipo: HttpTransportSE, al que pasaremos la URL de conexin del

    servicio web.

    Se ejecuta el proceso realizando la llamada al servicio web mediante el mtodo: call().

    Se genera un objeto envelope de tipo: SoapSerializationEnvelope, la cual se le indica la versin: VER11

    Se importa la clase: SoapSerializationEnvelope

    Con el mtodo doNet se le indica que es un servicio web de Visual Studio Net Con el mtodo: SetOutputSoapObject, los valores del request se almacenan hacia el objeto envelope

    Se genera un objeto transporte de tipo: HttpTransportSE, la cual contiene a la variable URL Por medio del mtodo call de objeto transporte, se invoca a: Soap_Action= NameSpace+Metodo y al objeto envelope (contiene los valores de los parmetros)

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    17

    10. Se importa a la clase: HttpTransportSE

    Tras la llamada al servicio ya est en disposicin de obtener el resultado devuelto por el mtodo web llamado. Se consigue mediante el mtodo getResponse().

    Dependiendo del tipo de resultado que esperemos recibir deberemos convertir esta respuesta a un tipo u otro.

    En este caso, como el resultado que esperamos es un valor simple (un nmero entero) convertiremos la respuesta a un objeto SoapPrimitive, que directamente

    podremos convertir a una cadena de caracteres llamado a toString().

    11. Se importa la clase: SoapPrimitive

    Se genera el objeto resultado de tipo SoapPrimitive, la cual devuelve el resultado por medio del mtodo: getResponse El valor se almacena hacia la variable rs

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    18

    12. Se imprime el valor de la variable rs hacia el cuadro de texto:

    13. Cortar y pegar la variable rs, donde de se declaran las variables:

    14. Cdigo del botn Salir (En Java: btn3 / en XML: btsalir)

    15. Grabar la aplicacin 16. En el archivo: AndroidManifest.xml (Archivo de configuracin)

    Doble clic en el archivo: AndroidManifest.xml

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    19

    17. Se muestra la siguiente pantalla:

    Clic en: Permissions

    Clic en: Add

    Clic en: Uses Permission

    Clic en: OK

  • INSTITUTO SUPERIOR PRIVADO PERUANO DE SISTEMAS SISE CARRERA PROFESIONAL DE COMPUTACIN E INFORMTICA

    DANIEL FERNANDO LOZA SANTA CRUZ CORREO: [email protected]

    20

    18. Seleccionar el permiso de internet

    19. Grabar el proyecto

    20. Crear el emulador

    21. Ejecutar la aplicacin dentro del emulador

    Clic en: Android.permission.INTERNET