Pular para o conteúdo principal

Aplicativo iOS

Este guia destina-se a desenvolvedores que estão compilando ou personalizando o aplicativo iOS complementar do LeadHub. O código-fonte do aplicativo é escrito em Swift e tem como alvo iPhone e iPad.


Requisitos

  • Xcode 15 ou posterior (somente macOS)
  • Swift 5.9 ou posterior
  • Destino de implantação iOS: mínimo iOS 15.0
  • Uma conta Apple Developer (necessária para TestFlight e distribuição na App Store)
  • Uma instância LeadHub com URL HTTPS válida e uma chave de API ativa

Configuração do Projeto

  1. Abra a pasta ios/ da sua compra do LeadHub no Xcode.
  2. Abra o arquivo .xcworkspace (não o .xcodeproj) se houver dependências do CocoaPods ou Swift Package Manager.
  3. Selecione seu time de desenvolvimento nas configurações de Signing & Capabilities do projeto.
  4. Compile e execute em um simulador ou dispositivo.

Arquitetura

O aplicativo usa uma arquitetura iOS padrão:

  • URLSession com um cliente de API personalizado para chamadas HTTP à REST API do LeadHub
  • Combine ou async/await para operações assíncronas
  • SwiftUI para a interface do usuário
  • CoreData para cache local de leads entre sessões
  • Apple Push Notification Service (APNs) para notificações push

As chaves de API são armazenadas no Keychain do iOS usando o framework Security.


Fluxo de Autenticação

  1. O usuário insere a URL da instância LeadHub e a chave de API na tela de integração.
  2. O aplicativo faz uma requisição GET /api/v1/health para verificar se a instância está acessível via HTTPS.
  3. Ele verifica se a chave de API é válida fazendo uma requisição autenticada de teste.
  4. A URL e a chave de API são armazenadas no Keychain.

Notificações Push

As notificações push usam o Apple Push Notification Service (APNs).

  1. Na sua conta Apple Developer, crie uma chave APNs (arquivo .p8) em Certificates, Identifiers & Profiles → Keys.
  2. Anote o Key ID e o seu Team ID.
  3. Na configuração do seu backend LeadHub, defina APNS_KEY, APNS_KEY_ID, APNS_TEAM_ID e APNS_BUNDLE_ID.
  4. No Xcode, ative a funcionalidade Push Notifications em Signing & Capabilities.

O aplicativo se registra para notificações push na primeira execução e envia o token do dispositivo ao backend do LeadHub via API.


Compilando para Distribuição

  1. Archive o aplicativo via Product → Archive no Xcode.
  2. Na janela Organizer, clique em Distribute App.
  3. Escolha App Store Connect para distribuição na App Store ou TestFlight para testes beta.
  4. Siga as instruções do Xcode para fazer o upload.

Endpoints de API Utilizados

EndpointPropósito
GET /api/v1/healthVerificar conectividade da instância
GET /api/v1/leadsCarregar lista de leads
GET /api/v1/leads/{id}Carregar detalhes do lead
PATCH /api/v1/leads/{id}Atualizar status ou etapa do lead
POST /api/v1/leads/{id}/tagsAdicionar tag ao lead
GET /api/v1/pipelinesCarregar lista de pipelines para seletor de etapa

Escopos Mínimos de Chave de API Necessários

EscopoMotivo
read:leadsVisualizar leads
write:leadsAtualizar status, etapa e tags do lead
read:pipelinesPreencher o seletor de etapa do pipeline

Declaração de Privacidade da App Store

Ao enviar para a App Store, declare o seguinte uso de dados na sua seção App Privacy:

  • Informações de Contato (e-mail, telefone) — coletadas de leads, não de usuários
  • Identificadores (chave de API) — vinculados ao usuário, usados para autenticação
  • Dados de Uso — não coletados