{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","results":{"codes":[]},"settings":"","params":[]},"next":{"description":"","pages":[]},"title":"Arquitetura SDK","type":"basic","slug":"arquitetura-sdk","excerpt":"Veja alguns detalhes da arquitetura de nossa SDK","body":"[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"1. Detalhes de Implementação\"\n}\n[/block]\nCom o intuito de evitar gargalos e aprimorar o tempo de resposta do seu aplicativo, todas as chamadas aos métodos da nossa SDK são feitas de forma assíncrona.\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/7be00ef-diagrama_sequencia.png\",\n        \"diagrama_sequencia.png\",\n        433,\n        322,\n        \"#77b5b6\"\n      ]\n    }\n  ]\n}\n[/block]\nEssencialmente, nossa SDK coleta as seguintes informações do dispositivo no momento da subscrição do usuário:\n  * **identifier:** identificador único do usuário na plataforma Inngage. Caso não seja utilizado um identificador customizado como o CPF ou endereço de e-mail, a SDK assume o UUID como identificador padrão.\n  * **registration:** identificador único do dispositivo que o identifica nos provedores de push (Firebase Cloud Messaging, Google Cloud Messaging ou Apple Push Notification service). Este identificado faz o vínculo do dispositivo com o aplicativo. \n  * **platform:** sistema operacional instalado no dispositivo.\n  * **os_version:** versão do sistema operacional.\n  * **device_model:** modelo do dispositivo.\n  * **device_manufacturer:** fabricante do dispositivo.\n  * **os_language:** idioma padrão configurado no dispositivo.\n  * **app_version:** versão corrente do aplicativo que está sendo usada pelo usuário.\n  * **uuid:** identificador único do dispositivo, podendo ser utilizado o IMEI, Mac Address ou o Android_ID (somente para dispositivos Android).\n\n[block:api-header]\n{\n  \"title\": \"2. Segurança\"\n}\n[/block]\nVisando garantir a integridade dos dados trafegados entre o aplicativo e os servidores da Inngage, utilizamos certificado SSL (Secure Socket Layer) em todas as chamadas de APIs realizadas pela SDK.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/3a55cbf-ssl_servidores.png\",\n        \"ssl_servidores.png\",\n        376,\n        159,\n        \"#bdbdbd\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"title\": \"3. Tamanho Total\"\n}\n[/block]\nNossa implementação segue as melhores práticas e padrões de desenvolvimento, com isso conseguimos otimizar o tamanho total de nossa SDK e consequentemente minimizar o espaço a ser acrescido em seu aplicativo. Veja abaixo quanto de espaço acrescentaremos no tamanho total de seu app:\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Plataforma\",\n    \"h-1\": \"Tamanho\",\n    \"0-0\": \"Android\",\n    \"0-1\": \"76 KB\",\n    \"1-0\": \"iOS\",\n    \"1-1\": \"181 KB\"\n  },\n  \"cols\": 2,\n  \"rows\": 2\n}\n[/block]","updates":[],"order":0,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"597e62359b6c7b0014720ac4","project":"57240e292887bb0e00bb9d93","version":{"version":"1.0","version_clean":"1.0.0","codename":"","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["57240e292887bb0e00bb9d97","57241b7deae5090e00ee6249","57241c06eae5090e00ee624a","57242abb2ad0bc170012279b","5734d18c7b9859320047f4b1","57688cc71f818b0e00695efb","577ead2ca74eb40e00d97bca","57b66af649a12a0e007b461b","597e5f8f13505b0014251a79","59964eb2f824b4000f961fbe","5a15ab12f2643f001ee8737c","5ab1151799750500797334e0","5c597e8b0abe110014bf1a11","5e395a05470bc3002d78d886","5e42a9647515f300509a594d","5f5e716dcc85f9004a4fa193","5f6dd615c624d800180bd237","5f984feb8aed05003a0032dc","60ac0e9c4c04970016613c6c"],"_id":"57240e292887bb0e00bb9d96","createdAt":"2016-04-30T01:45:13.341Z","project":"57240e292887bb0e00bb9d93","releaseDate":"2016-04-30T01:45:13.341Z","__v":19},"category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"SDK Mobile","slug":"sdk-android","order":13,"from_sync":false,"reference":false,"_id":"597e5f8f13505b0014251a79","project":"57240e292887bb0e00bb9d93","version":"57240e292887bb0e00bb9d96","createdAt":"2017-07-30T22:37:03.422Z","__v":0},"user":"57240d9f110e570e00486ca0","createdAt":"2017-07-30T22:48:21.344Z","githubsync":"","__v":0,"parentDoc":null}

Arquitetura SDK

Veja alguns detalhes da arquitetura de nossa SDK

[block:api-header] { "type": "basic", "title": "1. Detalhes de Implementação" } [/block] Com o intuito de evitar gargalos e aprimorar o tempo de resposta do seu aplicativo, todas as chamadas aos métodos da nossa SDK são feitas de forma assíncrona. [block:image] { "images": [ { "image": [ "https://files.readme.io/7be00ef-diagrama_sequencia.png", "diagrama_sequencia.png", 433, 322, "#77b5b6" ] } ] } [/block] Essencialmente, nossa SDK coleta as seguintes informações do dispositivo no momento da subscrição do usuário: * **identifier:** identificador único do usuário na plataforma Inngage. Caso não seja utilizado um identificador customizado como o CPF ou endereço de e-mail, a SDK assume o UUID como identificador padrão. * **registration:** identificador único do dispositivo que o identifica nos provedores de push (Firebase Cloud Messaging, Google Cloud Messaging ou Apple Push Notification service). Este identificado faz o vínculo do dispositivo com o aplicativo. * **platform:** sistema operacional instalado no dispositivo. * **os_version:** versão do sistema operacional. * **device_model:** modelo do dispositivo. * **device_manufacturer:** fabricante do dispositivo. * **os_language:** idioma padrão configurado no dispositivo. * **app_version:** versão corrente do aplicativo que está sendo usada pelo usuário. * **uuid:** identificador único do dispositivo, podendo ser utilizado o IMEI, Mac Address ou o Android_ID (somente para dispositivos Android). [block:api-header] { "title": "2. Segurança" } [/block] Visando garantir a integridade dos dados trafegados entre o aplicativo e os servidores da Inngage, utilizamos certificado SSL (Secure Socket Layer) em todas as chamadas de APIs realizadas pela SDK. [block:image] { "images": [ { "image": [ "https://files.readme.io/3a55cbf-ssl_servidores.png", "ssl_servidores.png", 376, 159, "#bdbdbd" ] } ] } [/block] [block:api-header] { "title": "3. Tamanho Total" } [/block] Nossa implementação segue as melhores práticas e padrões de desenvolvimento, com isso conseguimos otimizar o tamanho total de nossa SDK e consequentemente minimizar o espaço a ser acrescido em seu aplicativo. Veja abaixo quanto de espaço acrescentaremos no tamanho total de seu app: [block:parameters] { "data": { "h-0": "Plataforma", "h-1": "Tamanho", "0-0": "Android", "0-1": "76 KB", "1-0": "iOS", "1-1": "181 KB" }, "cols": 2, "rows": 2 } [/block]