Definição:
Um SDK (kit de desenvolvimento de software) é um conjunto de ferramentas, bibliotecas e componentes que os programadores utilizam para criar aplicações para uma plataforma ou sistema operativo específico.
O que é um SDK?
Quando um programador desenvolve uma aplicação móvel, raramente cria tudo do zero. Um SDK oferece-lhe um conjunto de ferramentas já prontas a utilizar, poupando-lhe tempo e esforço significativos, ao fornecer os elementos básicos necessários para adicionar funcionalidades específicas a uma aplicação.
Pense nisso como um conjunto de ferramentas. Em vez de criarem cada componente manualmente, os programadores integram um SDK e obtêm imediatamente acesso às funcionalidades e capacidades que este oferece, quer se trate de monitorizar instalações, apresentar anúncios, avaliar o comportamento dos utilizadores ou ligar-se a fontes de dados externas.
No marketing móvel, em particular, os SDKs são o meio pelo qual as aplicações comunicam com as plataformas que permitem a atribuição, a análise e a monetização. Ao integrar o SDK da Tenjin na sua aplicação, por exemplo, ganha a capacidade de monitorizar instalações, avaliar o desempenho das campanhas e aceder a dados detalhados dos utilizadores, tudo isto sem ter de criar essa infraestrutura por conta própria.
O que significa SDK?
SDK significa «kit de desenvolvimento de software». Por vezes, também se vê a expressão por extenso como «kit de desenvolvimento de software SDK», embora, na prática, a abreviatura seja utilizada de forma quase universal em todo o setor.
Um SDK típico reúne vários componentes de que os programadores necessitam para desenvolver e integrar de forma eficaz:
- Compilador: Converte o código para um formato que a plataforma possa executar
- Depurador: Ajuda os programadores a detetar e corrigir erros no seu código
- Bibliotecas: Código pré-escrito que trata de funções comuns, para que os programadores não tenham de as escrever do zero
- APIs: Interfaces que permitem que a aplicação comunique com serviços externos
- Exemplos de aplicações: Exemplos práticos que servem de ponto de partida para os programadores
- Documentação: Orientações sobre como implementar e utilizar tudo corretamente
Em conjunto, estes componentes proporcionam aos programadores tudo o que precisam para começarem a trabalhar rapidamente numa plataforma específica.
Como funcionam os SDKs?
Um SDK é desenvolvido para uma plataforma ou sistema operativo específico. Um SDK iOS é concebido para o ecossistema da Apple, um SDK Android é desenvolvido para o da Google e assim por diante. Os programadores integram o SDK na sua aplicação durante o processo de compilação e, a partir desse momento, a aplicação pode aceder a todas as funcionalidades que o SDK disponibiliza.
No contexto do marketing móvel, é assim que as aplicações se ligam a:
- Plataformas de atribuição, como a Tenjin, para monitorizar as instalações e o desempenho das campanhas
- Redes de publicidade, para veicular e medir a publicidade nas aplicações
- Ferramentas de análise, para recolher dados sobre o comportamento e o envolvimento dos utilizadores
- Plataformas de monetização, para permitir compras na aplicação e o acompanhamento das receitas publicitárias
Cada integração é, normalmente, um SDK distinto. É por isso que os programadores de aplicações móveis falam frequentemente do «excesso de SDKs», ou seja, do desafio de gerir vários SDKs em simultâneo sem afetar negativamente o desempenho da aplicação ou os tempos de carregamento.
SDKs no iOS e no Android
As duas plataformas móveis dominantes têm, cada uma, o seu próprio ecossistema de SDK:
SDK iOS
O SDK iOS da Apple proporciona aos programadores as ferramentas necessárias para criar aplicações para o iPhone e o iPad. Inclui acesso às estruturas, APIs e interfaces de hardware da Apple, sendo obrigatório para qualquer aplicação distribuída através da App Store.
SDK Android
O SDK Android da Google fornece o equivalente para dispositivos Android. Inclui as bibliotecas da API Android, um depurador e um emulador para testar aplicações em diferentes configurações de dispositivos.
A maioria das ferramentas de marketing móvel, incluindo a Tenjin, disponibiliza SDKs compatíveis com ambas as plataformas, pelo que os programadores podem efetuar a integração uma única vez por plataforma e manter um acompanhamento e uma medição consistentes em toda a sua base de utilizadores.
Qual é a diferença entre um SDK e uma API?
SDKs e APIEstes estão intimamente relacionados, mas têm finalidades diferentes.
| SDK | API | |
| O que é isto | Um conjunto completo de ferramentas para desenvolver numa plataforma | Uma interface que permite que um software comunique com outro software |
| O que está incluído | Bibliotecas, APIs, ferramentas, documentação, exemplos | Um conjunto definido de regras para a troca de dados |
| Âmbito | Abrangente, abrange todo o processo de desenvolvimento | Limitado, centrado numa ligação ou função específica |
| Relacionamento | Os SDKs incluem normalmente APIs | As APIs podem existir independentemente de um SDK |
Uma forma simples de entender isto: uma API é uma única porta entre dois sistemas. Um SDK é o edifício inteiro que contém muitas portas, juntamente com as chaves, as plantas e as instruções para as utilizar todas.
Por que razão os SDKs são importantes no marketing móvel
Para os profissionais de marketing móvel, os SDKs são a base da medição. Sem um SDK de atribuição integrado na sua aplicação, não é possível acompanhar de forma fiável de onde vêm os seus utilizadores, como se comportam após a instalação ou qual o desempenho das suas campanhas.
O SDK da Tenjin foi concebido para ser leve e fácil de integrar, para que os programadores possam começar a utilizá-lo rapidamente, sem grandes esforços de engenharia. Uma vez integrado, permite aceder ao conjunto completo de funcionalidades de atribuição, análise e relatórios da Tenjin, tanto em iOS como em Android.