Deep linking support
Deep linking is disabled by default. In order to enable it you will need to enable it in Kevin plugin and setup your app deep links for your callback urls in your
AndroidManifest.xml
file. Both in-app payments and account linking support deep links.KevinApplication.kt
class KevinApplication : Application() {
override fun onCreate() {
super.onCreate()
Kevin.setDeepLinkingEnabled(true)
KevinAccountsPlugin.configure(
KevinAccountsConfiguration.builder()
.setCallbackUrl("kevin://redirect.authorization")
.build()
)
KevinPaymentsPlugin.configure(
KevinPaymentsConfiguration.builder()
.setCallbackUrl("kevin://redirect.payment")
.build()
)
}
}
AndroidManifest.xml
<activity
android:name="eu.kevin.accounts.accountsession.AccountSessionActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="redirect.authorization"
android:scheme="kevin" />
</intent-filter>
</activity>
<activity
android:name="eu.kevin.inapppayments.paymentsession.PaymentSessionActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="redirect.payment"
android:scheme="kevin" />
</intent-filter>
</activity>
We recommend to use non
http/https
schemes for callback urls when deep linking is enabled. This is because on pre android 12 there could be multiple apps that could handle these urls like browsers and that could break the flow. You can read more about deep links here.Last modified 3mo ago