Startintentsenderforresult Deprecated Android
Code snippet: private fun requestHint() { val hintRequest = HintRequest.Builder() .setPhoneNumberIdentifierSupported(true) .build() val credentialsClient =
Solution 1:
Use the below code -
privatefunshowPhoneNumberSuggestion() {
val hintRequest = HintRequest.Builder()
.setPhoneNumberIdentifierSupported(true)
.build()
val options = CredentialsOptions.Builder()
.forceEnableSaveDialog()
.build()
// Then pass the hint request object to// credentialsClient.getHintPickerIntent()// to get an intent to prompt the user to// choose a phone number.val credentialClient = Credentials.getClient(applicationContext, options)
val intent = credentialClient.getHintPickerIntent(hintRequest)
try {
val intentSenderRequest = IntentSenderRequest.Builder(intent.intentSender).build()
phonePickIntentResultLauncher.launch(intentSenderRequest)
} catch (e: IntentSender.SendIntentException) {
e.printStackTrace()
}
}
For ActivityResult, use -
privateval phonePickIntentResultLauncher =
registerForActivityResult(ActivityResultContracts.StartIntentSenderForResult()) { result ->
if (result != null) {
val intent = result.dataval credential = intent?.getParcelableExtra<Credential>(Credential.EXTRA_KEY)
binding.inputPhone.setText(credential?.id)
}
}
Remember there are no request codes.
Use different result launchers for every particular task.
Post a Comment for "Startintentsenderforresult Deprecated Android"