criando um aplicativo android para consumir uma api restful desenvolvida em apigility
TRANSCRIPT
SACI
Criando um Aplicativo Android para Consumir uma API RESTFul Desenvolvida em Apigility
Bruno VasconcellosCCANETSetembro de 2015https://github.com/brunocvasconcellos/android
Quem esse cara?
O que tem nessa palestra?
Conceitos de API REST
Autenticao em API REST
Apresentar o Apigility Um API Builder
Implementar uma API REST e banco de dados
Programao em Android (uso de GPS, Mapas e requisies HTTP)
Mostrar uma implementao de um aplicativo desenvolvido para Android consumindo a API.
O que NO tem nessa palestra?
REST + FUL + API
Quem expe dados por API REST?
Por que APIs so consumidas?
Desenvolvedores de aplicativos mveis e web, empresas.
Aplicativos para transparncia
E-commerce
Integrao de aplicativos mveis, iot, smartwatch, android wear;
ERP;
Princpios API REST
Endpoint
URI (Uniform)
https://api.dominio.com.br/usuarios/
Princpios API REST
Protocolo HTTP (POST, GET, PUT,...)
Mtodo HTTP Operao
POSTCriar
GETLer
PUTAtualizar
DELETEApagar
PATCHAtualizar parcialmente
HEADERMostrar header
Princpios API REST
Stateless
URI Padronizao (
POST https://api.dominio.com.br/v1/produto/adicionar/1, GET https://api.dominio.com.br/v1/produto/1/)Coleo
Documentao
Princpios API REST
Retornos JSON (Javascript Notation)
JSON+Hal
XML
Autenticao
Autenticao
Autenticao
Autorizao
Protocolo padronizado
Token limite de tempo (refresh)
Limitao
HTTPS
Autorizao
Authorization Code Grant
Client credentials
Client credentials
Authorization Code Grant
SDK
Desenvolvimento para Android
Configuraes Aplicativo
String.xml
Activity
Interface Grfica
Gerenciadores de Layout
Posicionamento de elementos
Organizao de elementos
Posio de elementos em relao a outros.
EXEMPLO
MATERIAL DESIGN
Material Design
CONTEXT
Interface global do ambiente da aplicao.
GPS
Alarm
Audio
Wifi
Notificaes
SMS
INTENT
Execuo (Em geral uma Activity)
new Intent(this,NomeActivity.class);
SMS ;
Ligao telefnica;
Uri uri.parse('tel:5377418850');new Intent(Intent.ACTION_CALL,uri);
Utilizar agenda;
Configuraes Aplicativo
App Manifest - AndroidManifest.xml
Aplicativo
EMPREENDEDORISMO
Rede Social de Localizao
Aplicativo para treinos ( corridas)
Execuo de tarefas de acordo com localizao (SMS, Email);
App super mercado baseado na localizao;
PROJETOS SEMELHANTES
DreamFactory
PgRest ( REST + PostgreSQL + JS )
Referncias
Apigility - https://apigility.org/documentationAPI - http://www.infoq.com/br/presentations/10-atributos-de-uma-api-de-sucesso
https://github.com/brunocvasconcellos
Bruno Vasconcellos