Criar e consumir um SDK ativado pelo ambiente de execução

1
Key concepts
2
Set up your development environment
3
Build an RE SDK
4
Consume the RE SDK
5
Testing, and building for distribution

Criar e configurar um app de teste

Esta seção explica como configurar e preparar um app para consumir um SDK ativado no tempo de execução para testes locais.

Preparar seu app

Primeiro, crie um projeto ou módulo independente.

Nesse cenário, o app não contém o código do SDK. Em vez disso, ele o declara como uma dependência do Maven.

Para criar um app que consome um SDK ativado pelo Runtime, é necessário usar o Android Studio Ladybug Canary 1 ou mais recente e o Plug-in do Android para Gradle (AGP) 8.7.0-alpha01 ou mais recente.

  1. Siga as mesmas etapas descritas anteriormente para configurar seu ambiente de desenvolvimento e dispositivo/emulador para testes.
  2. Ative o SDK Runtime usando a flag descrita na Etapa 3:seção "Preparar o SDK".

    # This enables the Privacy Sandbox for your project on Android Studio.
    android.experimental.privacysandboxsdk.enable=true
    android.experimental.privacysandboxsdk.requireServices=false
    
  3. Adicione o URL do Maven do Sandbox de privacidade ao arquivo build.gradle de nível superior do projeto.

        allprojects {
            repositories {
                google()
                maven {
                    url "https://maven.privacysandbox.com/v1/repository"
                    }
                }
            }
    
  4. Mantenha a dependência do Maven na biblioteca de anúncios atual (destino do Maven do SDK compatível com o tempo de execução).

  5. Adicione um bloco privacySandbox ao build.gradle do projeto com uma dependência na biblioteca do SDK e defina enable como true

    plugins {
        id 'com.android.application'
        id 'org.jetbrains.kotlin.android'
    }
    
    android {
        //...
        privacySandbox {
            enable true
        }
        //...
    }
    
    dependencies {
        // SDK library dependency
        implementation(<maven coordinates to SDK library>)
    }
    
  6. Agora o app pode usar as APIs do SDK da mesma forma que explicado na seção de consumo de API.

Criar seu app

Você pode criar seus apps como um Android App Bundle (AAB) como faria normalmente.

Testar o SDK localmente

Para executar o app de teste, instale o SDK e o app ativados para execução no dispositivo de teste ou emulador usando o Android Studio.

  1. Abra o projeto do app de teste no Android Studio.
  2. Acesse Run > Edit Configurations. A janela de configuração "Run/Debug" vai aparecer. Você pode implantar como "APK padrão" ou "APK do pacote".
  3. Em Launch Options, defina Launch como Specified Activity.
  4. Clique no menu de três pontos ao lado de Atividade e selecione a atividade principal do cliente.
  5. Clique em Apply e em OK.
  6. Clique em Run para instalar o app cliente e o SDK no dispositivo de teste.

Criar seu SDK para distribuição

É necessário criar o SDK como um Android SDK Bundle (ASB) antes de publicá-lo em uma app store. O ASB é um pacote de publicação não assinado equivalente aos Android App Bundles.

O ASB, ou o derivado dele, o Android SDK Archive (ASAR), junto com o AAB do app, são transformados pelo Bundletool em um conjunto de APKs instaláveis. Os desenvolvedores de apps podem usar o BundleTool diretamente no Android Studio (atualmente na versão Canary) para gerar todas as variantes de APK.

O bundletool usa um AAB e um ASB e pode gerar um conjunto de variantes de APK:

  1. Um APK criado para execução no modo de compatibilidade com versões anteriores do SDK Runtime, para dispositivos que não são compatíveis com o SDK Runtime (Android 13 e versões anteriores). Esse APK contém todo o código necessário para o app e o SDK.
  2. Um APK criado para executar o modo SDK Runtime em dispositivos compatíveis com o SDK Runtime (Android 14 e versões mais recentes). Esse APK contém apenas o código do app, com stubs de API para o SDK ativado no tempo de execução.
  3. O APK do SDK com o código do SDK ativado pelo ambiente de execução, destinado a ser instalado antes do APK do app descrito na etapa anterior.

É possível criar um ASB de duas maneiras:

  • Android Studio
    1. Crie o projeto. Para isso, chame Build > Rebuild project.
    2. O arquivo ASB fica no módulo ASB ativado para tempo de execução em build/outputs/asb/single/<your-asb-module-name>.asb
  • Linha de comando do Bundletool: siga estas instruções.

O SDK precisa ser assinado com uma chave de upload antes da publicação. Use essa chave de upload para assinar seu ASB e fazer upload no SDK Console. O Google usa o certificado de upload para verificar sua identidade.

As etapas a seguir são uma visão geral do que você precisa fazer para assinar seu ASB:

  1. Gere um keystore e uma chave de upload. Isso é idêntico a gerar um keystore e uma chave de upload para apps.
  2. Assine o ASB com a chave de upload. Para fazer isso, adicione um bloco signingConfig ao arquivo build.gradle especificando a chave recém-criada e o keystore:
android {
  signingConfig {
    storeFile file(path-to-keystore.jks)
    storePassword "keystorePassword"
    keyAlias "UploadKey"
    keyPassword "keyPassword"
  }
}

As app stores podem desenvolver diferentes estratégias para usar esses componentes e oferecer suporte à distribuição de apps ativada no tempo de execução. O SDK Runtime trabalha continuamente com lojas de apps para ampliar o suporte a SDKs ativados pelo ambiente de execução.

Etapa 4: consumir o SDK ativado no tempo de execução