Mobile Apps - MeliDevConf 2013 - SP
-
Upload
melidevelopers -
Category
Documents
-
view
1.676 -
download
1
description
Transcript of Mobile Apps - MeliDevConf 2013 - SP
MercadoLivre Developers Conference
Mobile Apps
Gerente de Desenvolvimento
MercadoLivre Developers Conference
Um pouco de contextoComo construímos?Técnicas para expremer os bytesConselhos
Mobile Apps
MOBILE APPSMercadoLivre Developers Conference
MOBILE APPS
➔ IOS, Android, BB & Windows Phone➔ 8MM downloads➔ 13 países➔ 10K Transações diárias➔ 7,6% das compras do site: 3,4% apps
MercadoLivre Developers Conference
MercadoLivre Developers Conference Mobile Apps
Um pouco de contextoComo construímos?Técnicas para expremer os bytesConselhos
MOBILE APPSMercadoLivre Developers Conference
Utilizamos OAuth para autenticar os usuários
MOBILE APPSMercadoLivre Developers Conference
Estamos inscritos aos tópicos de perguntas e vendas para implementar as push notifications
MOBILE APPSMercadoLivre Developers Conference
MercadoLivre Developers Conference Mobile Apps
Um pouco de contextoComo construímos?Técnicas para expremer os bytesConselhos
MercadoLivre Developers Conference
GET /items/MLB495949586/?attributes=id,title
Mobile Apps
SELECTION → respostas menores
{ "id": "MLB495949586", "title": "Apple Macbook Pro Mc976 Core I7-2.6/8/512 Ssd/rw/15.4 Retina",}
MercadoLivre Developers Conference Mobile Apps
Uma api call → muitas visões
MercadoLivre Developers Conference Mobile Apps
{ ... "results": - [ - { "id": "MLB495949586", "site_id": "MLB", "title": "Apple Macbook Pro Mc976 Core I7-2.6/8/512 Ssd/rw/15.4 Retina", "subtitle": "Frete Gratis * Lançamento No Brasil * Completo Na Caixa * Novo *", "seller": {...}, "price": 7599, "currency_id": "BRL", "available_quantity": 83, "sold_quantity": 28, "buying_mode": "buy_it_now", "listing_type_id": "gold_premium", "stop_time": "2013-09-06T16:01:53.000Z", "condition": "new", "permalink": "http://produto.mercadolivre.com.br/MLB-495949586...", "thumbnail": "http://img2.mlstatic.com/s_MLB_v_I_f_2991579432_082012.jpg", "accepts_mercadopago": true, "installments": {...}, "address": {...}, "shipping": {...}, "seller_address": {...}, "attributes": [ ], },
GET /sites/MLB/search?q=macbook pro retina
MercadoLivre Developers Conference Mobile Apps
Api calls assíncronos para manter a fluidez
MercadoLivre Developers Conference Mobile Apps
“Pre-load: Mexa os bytes enquanto ninguém está vendo”
MercadoLivre Developers Conference Mobile Apps
GET /users/me/bookmarks?access_token=...
Exemplo
[{ "item_id": "MLB495949586"},{ "item_id": "MLB495923456"},{ "item_id": "MLB345346534"}]
MercadoLivre Developers Conference Mobile Apps
➔ Devem ser poucos e leves → usar selection➔ Assíncronos → non blocking➔ Poder ter um penalti no início da app
MercadoLivre Developers Conference Mobile Apps
Múltiplos api calls
SearchItemsCategoriesVariations
MercadoLivre Developers Conference Mobile Apps
MercadoLivre Developers Conference Mobile Apps
➔ Muitas API calls → Várias conexões➔ Quantos KBs a descarregar➔ Muitos pontos de falha➔ Duplicamos código com a lógica para gerar esta view
MercadoLivre Developers Conference Mobile Apps
mobile mashup
MercadoLivre API
MercadoLivre Developers Conference Mobile Apps
GET /sites/MLB/search….
GET /items/MLB123456
GET /sites/MLB/categories...
GET /categories/MLB109027/attributes
{ "results"[{
"title": "Zapatillas Adidas Climacoo"
"pictures_url":["http://img2.mlstatic.
com/s_MLA_v_O_f_54_13.jpg",] "variations": ["color","size"], "vertical": "CORE"
}]}
MercadoLivre Developers Conference Mobile Apps
Custom JSON
MercadoLivre Developers Conference Mobile Apps
Flexibilidade para mudanças
MercadoLivre Developers Conference Mobile Apps
Sem gzip Com gzip
61 KB 9 KB
curl -H 'Accept-Encoding: gzip,deflate' /sites/MLA/search?q=ipod
-80%
MercadoLivre Developers Conference Mobile Apps
Um pouco de contextoComo construímos?Técnicas para expremer os bytesConselhos
MercadoLivre Developers Conference Mobile Apps
➔ Medir response time➔ Medir kbs a descarregar➔ Testar em redes lentas (3G, EDGE)➔ Ser criativos e expremer cada byte!
Conselhos
Perguntas?
Soledad Dematteo@soledema