Usage
Learn how to use the Azakaw KYC SDK in your Android application.
Starting KYC Process
The simplest way to start the KYC process is:
AzakawKyc.start(
context = this,
config = AzakawKycConfig(
sessionId = "your-session-id",
environment = Environment.SANDBOX
),
onCancel = {
Toast.makeText(this, "KYC Cancelled", Toast.LENGTH_SHORT).show()
}
)
Full Implementation Example
Here's a complete Activity implementation showing how to integrate the SDK:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
findViewById<Button>(R.id.startKycButton).setOnClickListener {
startKycProcess()
}
}
private fun startKycProcess() {
// Example: Getting session ID from your backend
getSessionId { sessionId ->
AzakawKyc.start(
context = this,
config = AzakawKycConfig(
sessionId = sessionId,
environment = Environment.SANDBOX,
isFullscreen = true // Optional: Start in fullscreen mode
),
onCancel = {
// Handle cancellation
Toast.makeText(this, "KYC Cancelled", Toast.LENGTH_SHORT).show()
}
)
}
}
// Handle permissions
override fun onRequestPermissionsResult(
requestCode: Int,
permissions: Array<out String>,
grantResults: IntArray
) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
AzakawKyc.handlePermissionResult(requestCode, permissions, grantResults)
}
}
Best Practices
-
Context
- Always pass Activity context, not Application context
- Ensure Activity is not finishing when starting KYC
-
Error Handling
- Implement onCancel callback
- Handle permission results properly
- Consider implementing retry logic for session ID failures
-
Lifecycle
- Start KYC process when Activity is in proper state
- Handle configuration changes appropriately
- Clean up resources in onDestroy if needed
Permissions
The SDK handles camera permissions automatically, but ensure your app has the required permissions in the manifest:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
Next Steps
See the Examples section for more implementation scenarios.