onCreate method using sdk.registerCallback() before the Activity enters the Started lifecycle state. Ensure to call sdk.unregisterCallback() inside onDestroy() so that activity references are removed after it is destroyed.
Deprecated API Notice — The static
SDK.registerCallback() method is deprecated. Use the instance method sdk.registerCallback() instead as shown below.Registering a Callback (Recommended)
- MainActivity.kt
- MainActivity.java
import androidx.activity.ComponentActivity
import ae.gov.icp.uaekyc.JourneyCallback
import ae.gov.icp.uaekyc.JourneyResult
import ae.gov.icp.uaekyc.UaeKycSdk
class MainActivity : ComponentActivity() {
private var sdk: UaeKycSdk? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Create SDK instance
sdk = UaeKycSdk.create(applicationContext)
// Register callback
sdk?.registerCallback(this, object : JourneyCallback {
override fun onResult(result: JourneyResult) {
handleJourneyResult(result)
}
})
}
private fun handleJourneyResult(result: JourneyResult) {
when (result) {
is JourneyResult.Success -> {
// Handle success
}
is JourneyResult.Error -> {
// Handle error
}
else -> {
// Handle other cases
}
}
}
override fun onDestroy() {
super.onDestroy()
sdk?.unregisterCallback()
sdk?.close()
sdk = null
}
}
import androidx.activity.ComponentActivity;
import ae.gov.icp.uaekyc.JourneyCallback;
import ae.gov.icp.uaekyc.JourneyResult;
import ae.gov.icp.uaekyc.UaeKycSdk;
public class MainActivity extends ComponentActivity {
private UaeKycSdk sdk;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Create SDK instance
sdk = UaeKycSdk.create(getApplicationContext());
// Register callback
sdk.registerCallback(this, this::handleJourneyResult);
}
private void handleJourneyResult(final JourneyResult result) {
if (result instanceof JourneyResult.Success) {
// Handle success
} else if (result instanceof JourneyResult.Error) {
// Handle error
} else {
// Handle other cases
}
}
@Override
protected void onDestroy() {
super.onDestroy();
if (sdk != null) {
sdk.unregisterCallback();
sdk.close();
sdk = null;
}
}
}
Deprecated API
Deprecated — The following static
SDK methods are deprecated. Use the instance-based UaeKycSdk API instead.View deprecated SDK singleton API
View deprecated SDK singleton API
- MainActivity.kt
- MainActivity.java
import ae.gov.icp.uaekyc.JourneyCallback
import ae.gov.icp.uaekyc.JourneyResult
import ae.gov.icp.uaekyc.SDK
// DEPRECATED: Use UaeKycSdk instance methods instead
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Register callback (deprecated)
SDK.registerCallback(this, object : JourneyCallback {
override fun onResult(result: JourneyResult) {
handleJourneyResult(result)
}
})
}
private fun handleJourneyResult(result: JourneyResult) {
when (result) {
is JourneyResult.Success -> {
// Handle success
}
is JourneyResult.Error -> {
// Handle error
}
else -> {
// Handle other cases
}
}
}
override fun onDestroy() {
super.onDestroy()
SDK.unregisterCallback() // Unregister the callback (deprecated)
}
}
import ae.gov.icp.uaekyc.JourneyResult;
import ae.gov.icp.uaekyc.SDK;
// DEPRECATED: Use UaeKycSdk instance methods instead
public class MainActivity extends ComponentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Register callback (deprecated)
SDK.INSTANCE.registerCallback(this, this::handleJourneyResult);
}
private void handleJourneyResult(final JourneyResult result) {
if (result instanceof JourneyResult.Success) {
// Handle success
} else if (result instanceof JourneyResult.Error) {
// Handle error
} else {
// Handle other cases
}
}
@Override
protected void onDestroy() {
super.onDestroy();
SDK.INSTANCE.unregisterCallback(); // Unregister the callback (deprecated)
}
}
