Conexão com a plataforma
Este componente requer uma versão mínima do iOS13
O envio de eventos para a plataforma é realizado com o Tracking Component.
Este é responsável por realizar o rastreamento e o monitoramento das informações obtidas durante a execução das operações. Será possível acompanhar esses dados em tempo real na Plataforma, enquanto o processo está sendo executado no dispositivo do cliente.
Ao contrário do que acontece com o restante, este componente não funciona individualmente, ele atua de forma transversal aos demais componentes instalados na SDKMobile.
Dependências
CocoaPods
As bibliotecas da Facephi são distribuídas remotamente por meio de gerenciadores de dependências. No iOS, utiliza-se CocoaPods. As dependências obrigatórias que deverão ter sido instaladas previamente (adicionando-as no arquivo Podfile do projeto) são:
pod 'FPHISDKMainComponent', '~> $VERSION'Para instalar o componente Tracking, adicione a dependência correspondente no Podfile do projeto, junto com as dependências obrigatórias do SDK.
pod 'FPHISDKTrackingComponent', '~> $VERSION'Swift Package Manager (SPM)
Se você usa SPM, certifique-se de que as dependências obrigatórias do SDK estejam instaladas previamente.
//HTTPS
https://github.com/facephi-clienters/SDK-SdkPackage-SPM.git
//SSH
[email protected]:facephi-clienters/SDK-SdkPackage-SPM.gitPara instalar o componente Selphi, inclua-o nos módulos do projeto.
Permissões
Na aplicação cliente onde os componentes forem integrados, é necessário incorporar o seguinte elemento no arquivo Info.plist quando o tracking for enviar localização:
A permissão de localização só é necessária se não configura enableLocation: false no inicializador de TrackingController. Por padrão enableLocation es true e o componente pode solicitar e enviar localização nos eventos para a plataforma.
Integração
Para referenciar a dependência a partir do nosso código Swift:
Injeção no SDK
Inicialização do TrackingController
Crie a instância de TrackingController antes de chamar SDKController.shared.initSdk, passando-a no parâmetro trackingController.
enableLocation
Controla se o componente Tracking solicita e envia localização nos eventos para a plataforma. Por padrão a true.
Recebimento de erros
Os erros do controlador de tracking não são terminais. Ao contrário do restante do SDK, eles são informados por meio do callback injetado na sua inicialização (trackingError no inicializador anterior).
O parâmetro trackingError é uma String que pode assumir os seguintes valores:
APPLICATION_CONTEXT_ERROR: Erro na inicialização do contexto
ASSET_LINK: Erro ao enviar o link do recurso
ASSET_UPLOAD: Erro durante o carregamento do recurso
COMPONENT_LICENSE_ERROR: Licença do componente ausente ou inválida
CUSTOMER_ID: Erro ao obter ou validar o ID do cliente
DEVICE_EVENT_ERROR: Falha durante um evento relacionado ao dispositivo
EMPTY_LICENSE: Dados de licença vazios ou inexistentes
FLOW: Erro durante o fluxo de execução
INITIALIZATION_ERROR: Falha geral na inicialização
INIT_IDS_ERROR: Erro ao gerar ou atribuir IDs durante a inicialização
INIT_OPERATION: Operação falhou na fase de inicialização
LICENSE_ERROR: Licença inválida ou corrompida
MANAGER_NOT_INITIALIZED: Tentou-se usar o gerenciador sem inicializá-lo
NETWORK_CONNECTION: Problema com a conexão de rede
NETWORK_ERROR: Falha genérica de rede
NO_OPERATION_CREATED_ERROR: Nenhuma operação foi criada quando se esperava
OCR_DATA: Erro ao processar os dados de OCR
OPERATION_NOT_CREATED: A operação esperada não foi gerada
OPERATION_ID: ID da operação inválido ou ausente
SESSION_ID: Erro na identificação da sessão
SIGNATURE_RESULT: Falha no processo ou no resultado de assinatura
STEP_CHANGE: Transição de etapa inesperada ou inválida
STEP_RESULT_CANCELLED: A etapa foi cancelada de forma inesperada
STEP_RESULT_ERROR: A etapa terminou com um erro
STEP_RESULT_EXPIRED: O resultado da etapa expirou antes de ser concluído
STEP_RESULT_SUCCEEDED: A etapa foi bem-sucedida, mas gerou um problema inesperado
TOKEN_ERROR: Token ausente, expirado ou inválido
ADVANCED_TRACKING_UPLOAD: Falha ao enviar os dados de rastreamento avançado
TENANT_ID_EMPTY_ERROR: O ID do tenant estava vazio ou ausente
ADVANCED_TRACKING_SERIALIZATION_ERROR: Erro ao serializar os dados de rastreamento avançado
ADVANCED_TRACKING_VALIDATION_ERROR: Falha na validação dos dados de rastreamento
TOKENIZER_ERROR: Erro durante o processo de tokenização
Atualizado