Integration with the PayU OTP Parser SDK in 3 steps:
Include the SDK in your application.
Initiate the SDK.
Override these callbacks
Add below dependency in the application's build.gradle.
implementation 'com.payu.india:native-otp-reader:1.0.0'
OtpParser otpParser = OtpParser.Companion.getInstance(ComponentActivity activity);otpParser.startListening(OtpCallback otpCallback)OtpCallback otpCallback = new OtpCallback() {@Overridepublic void onOtpReceived(@NotNull String otp) {//When user gets the OTP}@Overridepublic void onUserDenied() {//User user denied the permission}};
val otpParser = OtpParser.getInstance(activity: ComponentActivity)otpParser?.startListening(otpCallback: OtpCallback)val otpCallback= object: OtpCallback {override fun onOtpReceived(otp: String) {//When user gets the OTP}override fun onUserDenied() {//User user denied the permission}}
You need to override these ActivityCompat callbacks and call OtpParser methods.
@Overridepublic void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {super.onRequestPermissionsResult(requestCode, permissions, grantResults);otpParser.onRequestPermissionsResult(requestCode, permissions, grantResults);//calling OtpParser onRequestPermissionsResult}@Overrideprotected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {super.onActivityResult(requestCode, resultCode, data);otpParser.onActivityResult(requestCode, resultCode, data);//calling OtpParser onActivityResult}
override fun onRequestPermissionsResult(requestCode: Int,permissions: Array<out String>,grantResults: IntArray) {super.onRequestPermissionsResult(requestCode, permissions, grantResults)otpParser?.onRequestPermissionsResult(requestCode, permissions, grantResults)//calling OtpParser onRequestPermissionsResult}override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {super.onActivityResult(requestCode, resultCode, data)otpParser?.onActivityResult(requestCode,resultCode,data)//calling OtpParser onActivityResult}