Skip to content

Instantly share code, notes, and snippets.

@gokmenbayram
Created September 24, 2021 08:39
Show Gist options
  • Save gokmenbayram/bcb5036f964f26a5a4f33141685121f1 to your computer and use it in GitHub Desktop.
Save gokmenbayram/bcb5036f964f26a5a4f33141685121f1 to your computer and use it in GitHub Desktop.
SmsReceiver.kt
class SmsReceiver: BroadcastReceiver() {
var smsBroadcastReceiverListener: SmsBroadcastReceiverListener? = null
override fun onReceive(context: Context?, intent: Intent?) {
if (intent?.action == SmsRetriever.SMS_RETRIEVED_ACTION) {
val extras = intent.extras
val smsRetrieverStatus = extras?.get(SmsRetriever.EXTRA_STATUS) as Status
when (smsRetrieverStatus.statusCode) {
CommonStatusCodes.SUCCESS -> {
val messageIntent = extras.getParcelable<Intent>(SmsRetriever.EXTRA_CONSENT_INTENT)
smsBroadcastReceiverListener?.onSuccess(messageIntent)
}
CommonStatusCodes.TIMEOUT -> {
smsBroadcastReceiverListener?.onFailure()
}
}
}
}
interface SmsBroadcastReceiverListener {
/**
* if common status success
*/
fun onSuccess(intent: Intent?)
/**
* if common status timeout
*/
fun onFailure()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment