Android

Para integrar o CieloWebViewSdk em seu projeto Android, utilize o arquivo .aar fornecido.

Recomendamos seguir os passos abaixo para garantir uma configuração adequada:

1. Estrutura de diretórios

No módulo onde o SDK será utilizado, crie (se necessário) o diretório libs:

<project-root>/
    └── <module>/
        └── libs/
            └── CieloWebViewSdk-<version>.aar
            └── CieloObservabilitySdk-<version>.aar                 
            └── CieloAnalyticsSdk-<version>.aar      

2. Inclusão do .aar no build

No build.gradle do módulo, adicione uma das opções abaixo na seção dependencies:

// Opção 1: Referência direta ao arquivo .aar
implementation files("$projectDir/libs/CieloWebViewSdk-<version>.aar")
implementation files("$projectDir/libs/CieloObservabilitySdk-<version>.aar")
implementation files("$projectDir/libs/CieloAnalyticsSdk-<version>.aar")

// Opção 2: Inclusão de todos os .aar do diretório
implementation fileTree(dir: 'libs', include: ['*.aar'])

3. Compatibilidade do ambiente

Certifique-se de que o projeto esteja alinhado com os seguintes requisitos de ambiente:

  • Kotlin: v1.9.0 ;
  • Gradle: v8.6.0 .

Essas versões garantem compatibilidade com os recursos utilizados no projeto e devem ser mantidas para evitar conflitos de dependência ou falhas de compilação.

📘

Seu projeto pode utilizar outras versões do Kotlin e do Gradle, desde que sejam compatíveis com as versões especificadas acima e não comprometam a estabilidade ou funcionalidade da aplicação.

4. Dependências obrigatórias

Certifique-se de declarar as seguintes bibliotecas no arquivo build.gradle do módulo:

dependencies {
    implementation "androidx.core:core-ktx:1.16.0"
    implementation "androidx.appcompat:appcompat:1.7.0"
    implementation "androidx.constraintlayout:constraintlayout:2.1.4"
    implementation "androidx.webkit:webkit:1.14.0" // Add na versão 1.2.0

    implementation "androidx.lifecycle:lifecycle-livedata:2.8.7"
    implementation "androidx.lifecycle:lifecycle-runtime:2.8.7"
    implementation "androidx.lifecycle:lifecycle-viewmodel:2.8.7"

    implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0" // Up na versão 1.3.0 (1.6.4 -> 1.9.0)
    implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0" // Up na versão 1.3.0 (1.6.4 -> 1.9.0)

    implementation "com.squareup.retrofit2:retrofit:2.9.0"
    implementation "com.squareup.retrofit2:converter-gson:2.9.0"
    implementation "com.squareup.okhttp3:okhttp:4.11.0" // Add na versão 1.2.0

    implementation "com.airbnb.android:lottie:6.6.0"

    implementation "io.opentelemetry:opentelemetry-api:1.37.0" // Add na versão 1.2.0
    implementation "io.opentelemetry:opentelemetry-sdk:1.37.0" // Add na versão 1.2.0
    implementation "io.opentelemetry:opentelemetry-exporter-logging:1.37.0" // Add na versão 1.2.0
    implementation "io.opentelemetry:opentelemetry-exporter-otlp:1.37.0" // Add na versão 1.2.0
}

Essas dependências são essenciais para garantir o funcionamento correto do SDK.

📘

Como a biblioteca é importada via arquivo .aar, o Gradle não realiza automaticamente a importação das dependências transitivas do SDK durante a sincronização do projeto. Por isso, é necessário declarar manualmente todas as bibliotecas utilizadas pelo SDK.