Integrar com Java ou Kotlin
Ao integrar o Checkout Pro em uma aplicação móvel com Java ou Kotlin, use as Custom Tabs no Android e o Safari View Controller no iOS para abrir o checkout em um navegador nativo integrado ao aplicativo.
Android
Nesta etapa iremos instalar e configurar as dependências necessárias para implementar Custom Tabs em seu projeto desenvolvido em Java ou Kotlin.
Se você usa Android Native para desenvolver sua aplicação, a primeira coisa que você precisa é instalar essa dependência no arquivo build.gradle.
Javadependencies { ... implementation "androidx.browser:browser:1.4.0" }
O próximo passo é implementar as Custom Tabs. Para fazer isso, você só precisa instanciá-las. A seguir, compartilhamos um exemplo de uma Custom Tab simples.
O código a seguir pode ser colocado ao abrir uma atividade ou ao executar uma ação nela, onde o valor url é igual ao init url do nosso checkout.
String url = "YOUR-checkout_url";
CustomTabsIntent intent = new CustomTabsIntent.Builder()
.build();
intent.launchUrl(MainActivity.this, Uri.parse(url));
val url = "YOUR-checkout_url"
val intent = CustomTabsIntent.Builder()
.build()
intent.launchUrl(this@MainActivity, Uri.parse(url))
Deep Links, também conhecidos como links diretos, são uma forma poderosa de permitir a navegação direta para telas ou seções específicas de uma aplicação móvel.
Criar um Deep Link
A partir do nosso checkout, é possível configurar Deep Links para retornar ao sua aplicação, seja clicando em um link "Voltar" ou automaticamente após concluir um fluxo de pagamento bem-sucedido, redirecionando-o de volta ao sua aplicação.
Para isso, devemos configurar as URLs de retorno no objeto config.online ao criar a order (success_url, failure_url, pending_url e auto_return), conforme necessário.
Para saber mais, você pode acessar a documentação sobre URLs de retorno.
success_url, failure_url, pending_url), como 'localhost/' ou '127.0.0.1'. Recomendamos usar um servidor com um domínio nomeado (DNS) ou IPs de desenvolvimento para poder retornar ao site após o pagamento.Para configurar um Deep Link nativo no Android, vá para o arquivo Android /app/src/main/AndroidManifest.xml e declare qual atividade estará disponível como Deep Link. Abaixo, compartilhamos um exemplo de como é uma atividade com Deep Link.
xml<activity android:name=".Congrats" android:exported="true" android:label="@string/deeplink" android:theme="@style/Theme.MyApplication.NoActionBar" > <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <!-- Accepts URIs that begin with "yourapp://congrats" --> <data android:scheme="yourapp" android:host="congrats" /> </intent-filter> </activity>
Nos valores intent, você deverá definir a atividade como navegável por outras aplicações. Com os valores scheme e host, você pode definir o Deep Link da aplicacão para uma atividade específica.
Lembre-se de que este Deep Link será usado em todas as URLs de retorno da sua order de pagamento. Nos ciclos da atividade que foi exposta (por exemplo, onCreate, onResume), você poderá inserir sua lógica de negócios após o pagamento.