For the complete documentation index, see llms.txt. This page is also available as Markdown.

Atualizando da versão 1.0.22 para a versão 1.0.25v19

Na versão 1.0.22 e anteriores, para inicializar o SDK era necessário estender a classe TapOnPhoneApplication. Essa classe, por sua vez, estendia Application(), e muitas aplicações têm sua própria classe que estende Application(). Como o Android não permite herança múltipla de Application, isso poderia causar erro na aplicação, já que duas classes Application estavam sendo estendidas. Para corrigir isso, não exigimos mais estender TapOnPhoneApplication(), mas sim que solicitamos agora fazer uma inicialização com a classe TapOnPhoneInitializer. Abaixo está como a implementação era feita na versão 1.0.22 e anteriores.

class Application : TapOnPhoneApplication() {
    override val terminalConfig = TerminalConfigEntity(
        companyDocument = BuildConfig.COMPANY_DOCUMENT,
        companyName = BuildConfig.COMPANY_NAME,
        merchantId = UUID.fromString(BuildConfig.MERCHANT_ID),
        terminalNumber = BuildConfig.TERMINAL_NUMBER,
        clientId = BuildConfig.CLIENT_ID,
        clientSecret = BuildConfig.CLIENT_SECRET
    )
}

A partir da versão 1.0.25v19, a implementação é feita da seguinte forma:

class Application : Application() {

    override fun onCreate() {
        super.onCreate()

        if (!TapOnPhoneInitializer.isApplicationInitAllowed(this)) return

        TapOnPhoneInitializer.initializeTerminal(this)

        TapOnPhoneInitializer.setTerminalConfig(
            TerminalConfigEntity(
                companyDocument = BuildConfig.COMPANY_DOCUMENT,
                companyName = BuildConfig.COMPANY_NAME,
                merchantId = UUID.fromString(BuildConfig.MERCHANT_ID),
                terminalNumber = BuildConfig.TERMINAL_NUMBER,
                clientId = BuildConfig.CLIENT_ID,
                clientSecret = BuildConfig.CLIENT_SECRET,
                sdkScope = BuildConfig.SDK_SCOPE,
                sdkClientId = BuildConfig.SKD_CLIENT_ID,
                sdkClientSecret = BuildConfig.SDK_CLIENT_SECRET,
                appVersion = "1.0.0",
                packageName = applicationContext.packageName,
                sdkOrganization = "Organization 123",
                versionCode = (if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
                    packageManager.getPackageInfo(packageName, 0).longVersionCode
                } else {
                    packageManager.getPackageInfo(packageName, 0).versionCode.toLong()
                }).toString()
            )
        )
    }
}

Atualizado