Apps Kit SDK logoApps Kit SDK
Documentação · AppsKitSDK (AKS) — Guia de integração para Android

7. Eventos e logs do AKS

7.1 Eventos automáticos de tela

Se a sua Activity sobrescrever setScreenNameAndId() (retornando um Pair<screenId, screenName>), a Activity base disparará automaticamente um evento SCREEN em onCreate() — você não precisa fazer nenhuma chamada para isso.

7.2 Eventos manuais dentro de uma Activity

Dentro de qualquer Activity que estenda AppsKitSDKBaseActivity / AppsKitSDKBaseComponentActivity:

kotlin
sendAKSEvent(AppsKitSDKEventType.BUTTON, "SaveClicked")

Isso cria e registra um evento chamado e_{screenId}_{prefix}_{name} no Firebase Analytics (e no log de depuração), usando o ID da tela retornado por setScreenNameAndId().

sendAKSEvent é apenas um wrapper de conveniência — ele equivale às linhas abaixo, que você pode chamar diretamente em um local onde esse método não esteja disponível (um Fragment, ViewModel, Composable ou uma Activity comum que não estenda uma das Activities base do AKS):

kotlin
AKSLogManager.log(
    PlatformContext(this),
    AKSEventCreator.createEvent(screenId, eventType, name)
)

Aqui, screenId é apenas o Int que você obteria de setScreenNameAndId().first — gerencie e passe esse valor por conta própria se não estiver dentro de uma Activity base do AKS.

AppsKitSDKEventType e seu prefixo no nome do evento do Firebase:

Constante do enum Prefixo
SCREEN SCR
BUTTON BTN
STATUS STS
ITEM ITM
LIST LST
ICON ICO
DIALOG_BTN DLG_BTN
ACTION ACT
TAB TAB
DIALOG DLG

O Firebase Analytics limita os nomes de eventos a 40 caracteres, então mantenha name curto — especialmente nos eventos ITEM/LIST, que acrescentam um índice/título ao nome.

7.3 Logs e eventos de uso geral

Para eventos fora do escopo de tela de uma Activity (serviços, ViewModels, repositórios etc.), use o wrapper AppsKitSDKLogManager, que trabalha com um Context comum:

kotlin
// Free-form debug log (tagged PTB_LOG in Logcat)
AppsKitSDKLogManager.log(AppsKitSDKLogType.INFO, "Sync finished")

// Fire a named Firebase event with parameters, from anywhere
AppsKitSDKLogManager.sendEvent("custom_event_name", mapOf("key" to "value"))

// Purchase / subscription events
AppsKitSDKLogManager.sendPurchaseEvent(
    context = this,
    purchaseType = PurchaseType.SUBSCRIPTION, // or PurchaseType.IN_APP
    productId = "premium_monthly",
    price = 4.99,
    currency = "USD",
    receiptId = receipt,
    uniqueTransactionId = transactionId,
    startDate = startDateIso,
    endDate = endDateIso
)

// SDK build/version banner in Logcat
AppsKitSDKLogManager.logAarVersion()

AppsKitSDKLogType: INFO, ERROR, VERBOSE, WARNING, DESCRIPTION.

7.4 Tags de log de depuração

Filtre o Logcat por:

  • PTB_LOG — logs gerais do SDK
  • PTB_LOG_ADS — ciclo de vida de carregamento/exibição de anúncios
  • PTB_LOG_ANALYTICS — eventos enviados ao Firebase/MMPs