Introducción a Android y conexión con SharePoint
-
Upload
albert-lozano-ciller -
Category
Mobile
-
view
192 -
download
0
Transcript of Introducción a Android y conexión con SharePoint
![Page 1: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/1.jpg)
The Birchman Group
CONFIDENTIAL AND PROPRIETARYAny use of this material without specific permission of The Birchman Group is strictly prohibited.
Android + SharePoint
Albert Lozano
![Page 2: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/2.jpg)
2
ÍNDICE
Android
Publicación
Herramientas de desarrollo
Ciclo de vida
Estructura de proyecto
Elementos de desarrollo
Android + SharePoint
Acceso a SharePoint
API REST
Autenticación
![Page 3: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/3.jpg)
3
Publicación
Registro en la consola de Google Play para desarrolladores.
Pago de cuota de registro única de 25 USD mediante Google Wallet.
Indicar información de contacto (Google Play Store).
![Page 4: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/4.jpg)
4
Publicación
La consola de desarrollador permite:
• Recoger estadísticas (descargas por versión , país, etc).
• Conceder permisos a otros usuarios.
• Restringir app para determinadas versiones o países.
• Definir precio de la app, precio compras in-app, etc.
• Lanzamiento de versiones alpha y beta para determinados usuarios definidos por el desarrollador.
![Page 5: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/5.jpg)
5
Herramientas de desarrollo
Java Development Kit (JDK).
Android Studio o Eclipse IDE + ADT plugin.
Android SDK (librerías, documentación, emulador, etc).
![Page 6: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/6.jpg)
6
Herramientas de desarrollo
Android Studio
Basado en IntelliJ.
Hace uso de las herramientas de compilación Gradle (basado en Maven).
Drag-and-drop GUI.
AVD Manager: crear dispositivos virtuales
SDK Manager: instalar librerías y documentación
![Page 7: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/7.jpg)
7
Ciclo de vida
Activity: componente que proporciona una ventana con la cual el usuario puede interactuar.
Resumed: la activity está en primer plano y el usuario puede interactuar con ella.
Paused: otra activity está en primer plano pero ésta es todavía parcialmente visible o no cubre toda la pantalla. (i.e. Pop Up).
Stopped: activity en background y no visible.
El sistema puede destruir las activities cuando están en stopped o paused si se necesitan recursos.
![Page 8: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/8.jpg)
8
Ciclo de vida
Solución
Guardar estado de la actividad – onSaveInstanceState()
Recuperar el estado de la actividad al crearla de nuevo.
TRANSPARENTE PARA EL USUSARIO!
![Page 9: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/9.jpg)
9
Estructura de proyecto
Android Studio Eclipse Clases .java: contienen el código fuente de las
activities.
Res:
Layouts
Drawable: imágenes en diferentes resoluciones.
Values: strings y dimensiones.
AndroidManifest.xml:
Declarar todos los componentes de la app.
Definir permisos (i.e. acceso internet).
Definir capacidades hardware y software que utilizará la app (cámara, bluetooth…).
Declarar la versión mínima requerida.
build.gradle: dependencias a librerías externas.
![Page 10: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/10.jpg)
10
Elementos de desarrollo
Linear Layout: ordena los elementos hijos en una sola fila vertical u horizontal. Automáticamente crea un scrollbar si los elementos superan el ancho o altura de la pantalla
Relative Layout: permite especificar la posición relativa de los elementos entre ellos.
Web View: muestra páginas web.
![Page 11: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/11.jpg)
11
Elementos de desarrollo
Button
Text Field
Checkbox
Radio button
Spinners
Dialog
Toggle button
Google APIs:
Google Maps
Google+
Google Analytics
Google Cloud Messaging
…
![Page 12: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/12.jpg)
12
Elementos de desarrollo
Drag-and-drop UI designer
![Page 13: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/13.jpg)
13
Elementos de desarrollo
AVD
![Page 14: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/14.jpg)
14
Soporte múltiples resoluciones
res/layout-w600dp/activity_main.xml (tables de 7”)
res/layout-w720dp/activity_main.xml (tablets de 10”)
Soporte de múltiples idiomas
Se cargan los recursos adecuados en función de la configuración “locale” del dispositivo.
Elementos de desarrollo
![Page 15: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/15.jpg)
15
Elementos de desarrollo
Imágenes para múltiples resoluciones
ldpi: ~120dpi
mdpi: ~160dpi
hdpi: ~240dpi
xhdpi: ~320dpi
xxhdpi: ~480dpi
px = dp * (dpi / 160)
1px = 1dp in a 160dpi screen
USAR SIEMPRE MEDIDAS EN DP!!!
![Page 16: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/16.jpg)
16
SHAREPOINT
![Page 17: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/17.jpg)
17
Acceso a Sharepoint
SOAPWeb Services
(ASMX)
Client Side ObjectModel
(CSOM/JSOM)
API REST(ODATA)
Open Standards
XML
Microsoft propietary
XML/JSON
Open Standards
ATOM/JSON
![Page 18: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/18.jpg)
18
Acceso a Sharepoint
SharePoint 2010 Web Service Access SharePoint 2010 Web Service Clients
SharePoint 2013 Web Service Access SharePoint 2013 Web Service Clients
![Page 19: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/19.jpg)
19
API REST
Eficiente para operaciones simples.
HTTP y estándares abiertos.
Realizar operaciones CRUD (GET, POST, PUT, DELETE).
Independiente de la plataforma.
Soporta los fotmatos ATOM+XML y JSON (se indica en las cabeceras).
Para acceder a una determinada site collection:
http://server/site/_api/site
Para acceder a un determinado site:
http://server/site/_api/web
![Page 20: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/20.jpg)
20
API REST
Descripción URL endpoint Método HTTP
Contenido body
Leer título de una site _api/web/title GET *
Leer metadata de una lista
_api/web/lists/getbytitle('listname') GET *
Leer ítems de una lista _api/web/lists/getbytitle('listname')/items GET *
Añadir ítem a una lista _api/web/lists/getbytitle('listname')/items POST {'_metadata':{'type':SP.listnameListItem},'Title': 'MyItem' }
![Page 21: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/21.jpg)
21
Autenticación
Query options
Ej: _api/web/lists/getByTitle('Customers')/items?$select=Title
Opción Propósito
$select Especifica los campos que se incluyen en los
datos devueltos.
$top Devuelve solo los n primeros elementos de una
colección o lista.
$skip Omite los n primeros elementos de una
colección o lista y devuelve todo lo demás.
$orderby Especifica los campos que se usan para ordenar
los datos antes de devolverlos.
![Page 22: Introducción a Android y conexión con SharePoint](https://reader030.fdocuments.in/reader030/viewer/2022032615/55a27b2e1a28ab1d618b474e/html5/thumbnails/22.jpg)
22
Autenticación
Autenticación NTLM
Activar Windows Authentication en el IIS.
Conexión persistente (autenticación en la primera petición).
Cliente Servidor