{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","params":[],"results":{"codes":[]},"settings":""},"next":{"description":"","pages":[]},"title":"Gerando Certificado APNS","type":"basic","slug":"gerando-certificado-apns","excerpt":"Esta página descreve os passos necessários para gerar o certificado APNS, necessário para disparos de push na Dito.","body":"# Criando o certificado SSL\n\nO primeiro passo é criar um App ID e o certificado SSL associado no site da [Apple Developer Member Center](https://developer.apple.com/membercenter/index.action). Este certificado irá permitir que o servidor envie *push notifications* para a aplicação identificado pelo *App ID*.\n\n## Pedido de Certificado\n\nPara começar, vamos precisar de um arquivo de solicitação para a assinatura do certificado. Isto será utilizado para autenticar a criação do certificado SSL.\n\n1. Inicie a aplicação \"Keychain Access\" no Mac.\n\n2. Selecione o item do menu “Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority…”.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/VQoHjlqEQBqQtaw8LvJc_1.jpg\",\n        \"1.jpg\",\n        \"879\",\n        \"579\",\n        \"#295992\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n3. Digite seu e-mail e nome.\n\n4. Selecione “Saved to disk” para realizar o download do arquivo .certSigningRequest. \n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/qnhCIEOKQkqjmP9EFwcJ_2.jpg\",\n        \"2.jpg\",\n        \"617\",\n        \"436\",\n        \"#b06163\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n## Criando um App ID\n\nToda aplicação iOS instalado no dispositivo do desenvolvedor necessita de um *App ID*. Como convenção, são representados por endereços invertidos (ex.: com.example.MyPushApp). \n\n1. Navegue no site do *Apple Developer Member Center* e selecione *Certificates*, *Identifiers* & *Profiles*.\n2. Selecione *Identifiers* na seção *iOS Apps*.\n3. Você verá a lista de seus *iOS App IDs*. Selecione o botão + para registrar um novo *App ID*.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/XKhaKHOISyWREr2kZiDB_3.jpg\",\n        \"3.jpg\",\n        \"976\",\n        \"493\",\n        \"#a55a71\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n4. Digite um nome para seu novo *App ID* e marque o checkbox para habilitar o serviço de Push Notifications, localizado abaixo de App Services.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/A6sX92J0TR6CTfAi463Q_4.jpg\",\n        \"4.jpg\",\n        \"674\",\n        \"168\",\n        \"#85aacf\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/vNsx8OntQ6SXiDhEEa4h_5.jpg\",\n        \"5.jpg\",\n        \"672\",\n        \"640\",\n        \"#449df5\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n5. Abaixo de *App ID Suffix* selecione *Explicit App ID*. Digite o Bundle ID de seu ap iOS. Esta string deve ser igual ao *Bundle Identifier* no arquivo *Info.plist* em seu app iOS.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/ita98uwzTOOKh3u29mZD_6.jpg\",\n        \"6.jpg\",\n        \"668\",\n        \"325\",\n        \"#3f9cf7\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n6. Selecione “Continue” e depois “Submit” para finalizar o registro.\n\n## Configurando o App ID para Push Notification\n\nAgora que você criou um *App ID*, é hora de configurar o *App ID* para *Push Notifications*.\n\n1. Selecione o novo App ID criado da lista de iOS App IDs, então selecione “Edit”.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/UHDUrLmSOWG2X7rR7CJv_7.jpg\",\n        \"7.jpg\",\n        \"723\",\n        \"787\",\n        \"#1d5b82\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n2. Desça até a seção de *Push Notifications*. Aqui você será capaz de criar tanto um Certificado SSL de desenvolvimento bem como uma de produção. Comece selecionando “Create Certificate” em “Development SSL Certificate”.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/1UHO3A0MSo6S3uGMiGSS_8.jpg\",\n        \"8.jpg\",\n        \"679\",\n        \"401\",\n        \"#409cf4\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n3. A próxima tela mostrará instruções para criar um *Certificate Signing Request (CSR)*. Isto é o mesmo arquivo .certSigningRequest criado anteriormente. Selecione “Continue”, então escolha “Choose File...” e coloque esse arquivo.\n4. Selecione “Generate”. Uma vez que o certificado estiver pronto, selecione “Done” e depois realize o download do certificado.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/zTiv2soHQ52NQe4NxYVf_9.jpg\",\n        \"9.jpg\",\n        \"677\",\n        \"479\",\n        \"#32b440\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n5. Clique duas vezes no certificado SSL baixado para instalá-lo em seu *Keychain*.\n6. No *Keychain Access*, dentro de “My Certificates”, procure o certificado que você adicionou.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/gtYiLsAtR3ayLKf8xz6A_10.jpg\",\n        \"10.jpg\",\n        \"879\",\n        \"339\",\n        \"#826b58\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n7. Clique com o botão direito, selecione \"Export Apple Development IOS Push Services:...\" e salve como arquivo .p12. Você será solicitado para digitar uma senha que será usada para proteger o certificado exportado. **Não digite uma senha de exportação quando solicitado!**\n\n# Criando um Provisioning Profile\n\nUm *Provisioning* Profile autentica seu dispositivo a rodar o app que você está desenvolvendo. Se você tiver criado um novo *App ID* ou alterado um existente você vai precisar gerar novamente o *Provisioning Profile* e instalá-lo. Se você tiver problemas ao usar um *profiling* existente, tente remover o App ID e configurá-lo novamente, Neste tutorial iremos criar um novo.\n\n1. Navegue no website *Apple Developer Member Center* e selecione *Certifies, Identifiers & Profiles*.\n\n2. Selecione *Provisioning Profiles* na seção *iOS Apps*.\n\n3. Selecione o botão + para criar um novo *Provisioning Profile*.\n\n4. Escolha “iOS App Development” como seu tipo de *Provisioning Profile* e clique em “Continue”.\n\n5. Escolha o *App IS* que foi criado no e clique em “Continue”.\n\n6. Selecione seu certificado de desenvolvedor iOS na próxima tela e clique em “Continue”.\n\n7. Você será solicitado para selecionar quais dispositivos srão incluídos no *Provisioning Profile*. Clique em “Continue” depois de selecionar quais dispositivos serão testados.\n\n8. Escolha um nome para esse *Provisioning Profile* e clique em “Generate”.\n\n9. Baixe o *Provisioning Profile* gerado clicando no botão “Download”.\n\n10. Instale o *profile* clicando duas vezes no arquivo baixado.\n\n# Desenvolvendo o código de Push Notification integrado com a Dito\n\nNa plataforma da Dito será necessário adicionar o certificado no formato .pem, para isso será necessário converter o arquivo .p12 para .pem:\n\n`````\n$ openssl pkcs12 -in cert.p12 -out apple_push_notification.pem -nodes -clcerts\n`````\n\n**Para instruções de como instalar e utilizar a nossa SDK IOS, consulte a [documentação](https://developers.dito.com.br/v1.0/docs/ios).**","updates":[],"order":0,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"6171a45d8b4069004113dc01","createdAt":"2021-10-21T17:33:17.467Z","user":"55bbb13fa8400c2d00873f1e","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Tutoriais","slug":"informações","order":4,"from_sync":false,"reference":false,"_id":"5c016f198e69b802d4385e25","project":"5538fb24dc5dd00d00e1da91","version":"5538fb25dc5dd00d00e1da94","createdAt":"2018-11-30T17:10:49.537Z","__v":0},"version":{"version":"1.0","version_clean":"1.0.0","codename":"","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5538fb25dc5dd00d00e1da95","5538feec27f8540d0024f00e","5547cbd3d3427d0d00cd6e2d","554a574f0b54d30d007fe0f9","55afbdbef202b12100cd9eeb","5c016f198e69b802d4385e25","5c81470b175ad6002457d9fa","5c81472e74fd5a0063420bae","5c81476b2dd69100430ea5a4"],"_id":"5538fb25dc5dd00d00e1da94","createdAt":"2015-04-23T14:01:09.040Z","project":"5538fb24dc5dd00d00e1da91","__v":9,"releaseDate":"2015-04-23T14:01:09.040Z"},"project":"5538fb24dc5dd00d00e1da91","__v":0,"parentDoc":null}

Gerando Certificado APNS

Esta página descreve os passos necessários para gerar o certificado APNS, necessário para disparos de push na Dito.

# Criando o certificado SSL O primeiro passo é criar um App ID e o certificado SSL associado no site da [Apple Developer Member Center](https://developer.apple.com/membercenter/index.action). Este certificado irá permitir que o servidor envie *push notifications* para a aplicação identificado pelo *App ID*. ## Pedido de Certificado Para começar, vamos precisar de um arquivo de solicitação para a assinatura do certificado. Isto será utilizado para autenticar a criação do certificado SSL. 1. Inicie a aplicação "Keychain Access" no Mac. 2. Selecione o item do menu “Keychain Access > Certificate Assistant > Request a Certificate From a Certificate Authority…”. [block:image] { "images": [ { "image": [ "https://files.readme.io/VQoHjlqEQBqQtaw8LvJc_1.jpg", "1.jpg", "879", "579", "#295992", "" ] } ] } [/block] 3. Digite seu e-mail e nome. 4. Selecione “Saved to disk” para realizar o download do arquivo .certSigningRequest. [block:image] { "images": [ { "image": [ "https://files.readme.io/qnhCIEOKQkqjmP9EFwcJ_2.jpg", "2.jpg", "617", "436", "#b06163", "" ] } ] } [/block] ## Criando um App ID Toda aplicação iOS instalado no dispositivo do desenvolvedor necessita de um *App ID*. Como convenção, são representados por endereços invertidos (ex.: com.example.MyPushApp). 1. Navegue no site do *Apple Developer Member Center* e selecione *Certificates*, *Identifiers* & *Profiles*. 2. Selecione *Identifiers* na seção *iOS Apps*. 3. Você verá a lista de seus *iOS App IDs*. Selecione o botão + para registrar um novo *App ID*. [block:image] { "images": [ { "image": [ "https://files.readme.io/XKhaKHOISyWREr2kZiDB_3.jpg", "3.jpg", "976", "493", "#a55a71", "" ] } ] } [/block] 4. Digite um nome para seu novo *App ID* e marque o checkbox para habilitar o serviço de Push Notifications, localizado abaixo de App Services. [block:image] { "images": [ { "image": [ "https://files.readme.io/A6sX92J0TR6CTfAi463Q_4.jpg", "4.jpg", "674", "168", "#85aacf", "" ] } ] } [/block] [block:image] { "images": [ { "image": [ "https://files.readme.io/vNsx8OntQ6SXiDhEEa4h_5.jpg", "5.jpg", "672", "640", "#449df5", "" ] } ] } [/block] 5. Abaixo de *App ID Suffix* selecione *Explicit App ID*. Digite o Bundle ID de seu ap iOS. Esta string deve ser igual ao *Bundle Identifier* no arquivo *Info.plist* em seu app iOS. [block:image] { "images": [ { "image": [ "https://files.readme.io/ita98uwzTOOKh3u29mZD_6.jpg", "6.jpg", "668", "325", "#3f9cf7", "" ] } ] } [/block] 6. Selecione “Continue” e depois “Submit” para finalizar o registro. ## Configurando o App ID para Push Notification Agora que você criou um *App ID*, é hora de configurar o *App ID* para *Push Notifications*. 1. Selecione o novo App ID criado da lista de iOS App IDs, então selecione “Edit”. [block:image] { "images": [ { "image": [ "https://files.readme.io/UHDUrLmSOWG2X7rR7CJv_7.jpg", "7.jpg", "723", "787", "#1d5b82", "" ] } ] } [/block] 2. Desça até a seção de *Push Notifications*. Aqui você será capaz de criar tanto um Certificado SSL de desenvolvimento bem como uma de produção. Comece selecionando “Create Certificate” em “Development SSL Certificate”. [block:image] { "images": [ { "image": [ "https://files.readme.io/1UHO3A0MSo6S3uGMiGSS_8.jpg", "8.jpg", "679", "401", "#409cf4", "" ] } ] } [/block] 3. A próxima tela mostrará instruções para criar um *Certificate Signing Request (CSR)*. Isto é o mesmo arquivo .certSigningRequest criado anteriormente. Selecione “Continue”, então escolha “Choose File...” e coloque esse arquivo. 4. Selecione “Generate”. Uma vez que o certificado estiver pronto, selecione “Done” e depois realize o download do certificado. [block:image] { "images": [ { "image": [ "https://files.readme.io/zTiv2soHQ52NQe4NxYVf_9.jpg", "9.jpg", "677", "479", "#32b440", "" ] } ] } [/block] 5. Clique duas vezes no certificado SSL baixado para instalá-lo em seu *Keychain*. 6. No *Keychain Access*, dentro de “My Certificates”, procure o certificado que você adicionou. [block:image] { "images": [ { "image": [ "https://files.readme.io/gtYiLsAtR3ayLKf8xz6A_10.jpg", "10.jpg", "879", "339", "#826b58", "" ] } ] } [/block] 7. Clique com o botão direito, selecione "Export Apple Development IOS Push Services:..." e salve como arquivo .p12. Você será solicitado para digitar uma senha que será usada para proteger o certificado exportado. **Não digite uma senha de exportação quando solicitado!** # Criando um Provisioning Profile Um *Provisioning* Profile autentica seu dispositivo a rodar o app que você está desenvolvendo. Se você tiver criado um novo *App ID* ou alterado um existente você vai precisar gerar novamente o *Provisioning Profile* e instalá-lo. Se você tiver problemas ao usar um *profiling* existente, tente remover o App ID e configurá-lo novamente, Neste tutorial iremos criar um novo. 1. Navegue no website *Apple Developer Member Center* e selecione *Certifies, Identifiers & Profiles*. 2. Selecione *Provisioning Profiles* na seção *iOS Apps*. 3. Selecione o botão + para criar um novo *Provisioning Profile*. 4. Escolha “iOS App Development” como seu tipo de *Provisioning Profile* e clique em “Continue”. 5. Escolha o *App IS* que foi criado no e clique em “Continue”. 6. Selecione seu certificado de desenvolvedor iOS na próxima tela e clique em “Continue”. 7. Você será solicitado para selecionar quais dispositivos srão incluídos no *Provisioning Profile*. Clique em “Continue” depois de selecionar quais dispositivos serão testados. 8. Escolha um nome para esse *Provisioning Profile* e clique em “Generate”. 9. Baixe o *Provisioning Profile* gerado clicando no botão “Download”. 10. Instale o *profile* clicando duas vezes no arquivo baixado. # Desenvolvendo o código de Push Notification integrado com a Dito Na plataforma da Dito será necessário adicionar o certificado no formato .pem, para isso será necessário converter o arquivo .p12 para .pem: ````` $ openssl pkcs12 -in cert.p12 -out apple_push_notification.pem -nodes -clcerts ````` **Para instruções de como instalar e utilizar a nossa SDK IOS, consulte a [documentação](https://developers.dito.com.br/v1.0/docs/ios).**