SDK IOS

Última atualização: 10 de Abril de 2024

Introdução

O objetivo deste manual é fornecer todas as informações necessárias para instalação e uso da ferramenta nos aplicativos desenvolvidos para plataforma iOS.

Este SDK é escrito em ObjC e realiza a coleta de dados (informações e localização) do dispositivo e envio para ClearSale. Todas as informações coletadas são dados relacionados apenas ao dispositivo, sem relação ao aplicativo integrado.

As informações de geolocalização e IDFA (Identifier for advertisers) dependem da permissão concedida pelo usuario do dispositivo, neste caso é necessário que o aplicativo solicite o acesso da informação de localização do usuário (o SDK não solicita permissão). Caso o aplicativo não solicite o acesso ou o usuário não conceda permissão, para localização, não será realizada a captura das informações de GeoLocation.

O SDK respeita a política de privacidade da Apple para a captura dos dados do dispositivo e o nível de permissão atribuído pelo usuário (usuário do dispositivo).

Checksum

Package Digest
CSBehavior MD5: 2329818ab396724b0b91362c7abced5a6a849deb

Para consultar o checksum do artefato baixado verifique o podfile.lock, após executar o comando pod install no seu projeto.

Checksum

Package Digest
CSBehavior MD5: 53dd028224a73c0ad9043899fb9def50dcfefc69

Para consultar o checksum do artefato baixado verifique o podfile.lock, após executar o comando pod install no seu projeto.

Checksum

Package Digest
CSBehavior MD5: 3f75401faf3d751559723df4aa78fa1ec85384a8

Para consultar o checksum do artefato baixado verifique o podfile.lock, após executar o comando pod install no seu projeto.

iOS

Instalação do Package

  • CocoaPods

O pod está disponível em um repositório privado, e para sua utilização seguir o exemplo abaixo para o PodFile:

source	'https://dev.azure.com/PublicPackagesCS/Behavior/_git/BehaviorAnalytics.SDK.IOS.Specs'

use_frameworks!

target 'NOME_DO_PROJETO' do
pod 'CSBehavior', '3.0.1'

end

  • CocoaPods

O pod está disponível em um repositório privado, e para sua utilização seguir o exemplo abaixo para o PodFile:

source	'https://dev.azure.com/PublicPackagesCS/Behavior/_git/BehaviorAnalytics.SDK.IOS.Specs'

use_frameworks!

target 'NOME_DO_PROJETO' do
pod 'CSBehavior', '3.0.2-rc.1'

end

  • CocoaPods

O pod está disponível em um repositório privado, e para sua utilização seguir o exemplo abaixo para o PodFile:

source	'https://dev.azure.com/PublicPackagesCS/Behavior/_git/BehaviorAnalytics.SDK.IOS.Specs'

use_frameworks!

target 'NOME_DO_PROJETO' do
pod 'CSBehavior', '4.0.6'

end

Configuração

Instruções para configuração do framework no projeto:

  1. Abrir o project editor, selecionar o projeto, e na aba “Build Settings” adicionar a flag “-ObjC” para a setting “Other Linker Flags”.
  2. Adicionar as seguintes entradas ao arquivo Info.plist do projeto de destino:
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <dict>
            <key>clearsale.com.br</key>
            <dict>
                <key>NSTemporaryExceptionMinimumTLSVersion</key>
                <string>TLSv1.2</string>
            </dict>
        </dict>
    </dict>
    
    <key>NSUserTrackingUsageDescription</key>
    <string>Explicação de porque o usuário precisa conceder a permissão.</string>
  3. Para projetos desenvolvidos em Objective-C importar @import CSBehavior; no arquivo onde se deseja utilizar o framework.
    Para projetos desenvolvidos em Swift importar <CSBehavior/CSBehavior.h> no bridging header do projeto.
  4. Para solicitar a permissão de coleta de IDFA, é necessário adicionar o seguinte trecho de código:
    Objective-C:
    #import <AppTrackingTransparency/AppTrackingTransparency.h>
    #import <AdSupport/AdSupport.h>
    
    if (@available(iOS 14, *)) {
        [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
        }];
    }
    
    Swift:
    import AppTrackingTransparency
    ...
    if #available(iOS 14, *) {
        ATTrackingManager.requestTrackingAuthorization { _ in
        }
    }
    

Classe CSBehavior

Descrição

CSBehavior é a classe responsável pela coleta das informações.

Construtores

Esta classe não possui construtores públicos. A instância deverá ser feita através de um método estático.


Métodos Estáticos
Nome do método Descrição
(CSBehavior *)getInstance:(NSString *)toApp Obtém a instância da classe CSBehavior para um AppKey.
É necessário passar como parâmetro o AppKey (valor fornecido pela ClearSale).

Métodos

Nome do método Descrição
(NSString *)generateSessionId Gera e retorna um identificador de sessão.
Este método deve ser utilizado somente se o aplicativo não gerar
identificadores únicos para cada coleta.
(void)collectDeviceInformation:(NSString *)toSessionId Realiza a coleta das informações do dispositivo vinculando ao valor de Sessão.
É necessário passar como parâmetro o SessionId, valor de sessão.
  • Caso não possua um valor próprio para o SessionID utilizar o método. generateSessionId().
  • O tamanho máximo de SessionID a ser usado é 128 caracteres.
  • O tamanho mínimo do SessionID a ser usado é de 6 caracteres.
  • Será lançao uma excessão caso o valor do sessionID passado não seja valido.

Exemplos

ObjC com valor de SessionId
CSBehavior *behavior = [[CSBehavior getInstance] @"APP_KEY" ]
[behavior collectDeviceInformation: @"SESSION_ID"]

ObjC sem valor de SessionId
CSBehavior *behavior = [[CSBehavior getInstance] @"APP_KEY" ]
NSString *sessionId =  [behavior generateSessionId]
[behavior collectDeviceInformation:sessionId]

Swift com valor de SessionId
var behavior: CSBehavior = CSBehavior.getInstance("APP_KEY");
behavior.collectDeviceInformation("SESSION_ID")

Swift com valor de SessionId
var behavior: CSBehavior = CSBehavior.getInstance("APP_KEY");
var sessionId: NSString = behavior.generateSessionId();
behavior.collectDeviceInformation(sessionId);

Projeto de Exemplo

É possível visualizar a implementação do SDK em um projeto de exemplo Clicando aqui.

FAQ

Acesse nosso FAQ Clicando Aqui

Detalhes de privacidade

Uso de dados

Todas as informações coletadas pelo SDK da ClearSale são com exclusiva finalidade de prevenção à fraude e proteção ao próprio usuário, aderente à política de segurança e privacidade das plataformas Google e Apple e à LGPD. Por isso, estas informações devem constar na política de privacidade do aplicativo.

Tipo de dados coletados

O SDK da ClearSale coleta as seguintes informações do dispositivo :

  • Localização precisa (quando habilitada permissão pelo usuário);
  • Identificadores de publicidade do dispositivo (quando habilitada permissão pelo usuário);
  • Características físicas do dispositivo/ hardware (Como tela, bateria, teclado, espaço livre em disco, modelo, nome do dispositivo);
  • Características de software (Como versão, idioma, build, controle parental);
  • Informações de rede (Como Conexões, IP);
  • Operadora do SimCard.

Política de privacidade da Google
Política de privacidade da Apple

Licença de Uso.

Ao realizar o download e utilizar nosso SDK você estará concordando com a seguinte licença.

Copyright © 2024 ClearSale

Todos os direitos são reservados, sendo concedida a permissão para usar o software da maneira como está, não sendo permitido qualquer modificação ou cópia para qualquer fim. O Software é licenciado com suas atuais configurações “tal como está” e sem garantia de qualquer espécie, nem expressa e nem implícita, incluindo mas não se limitando, garantias de comercialização, adequação para fins particulares e não violação de direitos patenteados. Em nenhuma hipótese os titulares dos Direitos Autorais podem ser responsabilizados por danos, perdas, causas de ação, quer seja por contrato ou ato ilícito, ou outra ação tortuosa advinda do uso do Software ou outras ações relacionadas com este Software sem prévia autorização escrita do detentor dos direitos autorais.