I have to add an extra parameter as "meetingToken" in firebase deeplink .
But On adding an extra parameter "meetingtoken" as queryparameter im not recieving the value and getting error in joinmeeting(it) : No value passed for parameter meetingToken.
While the same works fine on passing a single parameter, What changes do i need to recieve both the parameters value.
Currently its giving me error at:
deepLink?.getQueryParameter("meetingCode")?.let { joinMeeting(it) }
No value passed for parameter 'meetingToken'
Link = https://example.in/?meetingCode=myuser?meetingToken=rtgdhh.tywufgsioqpp
private fun handleDynamicLink() {
Firebase.dynamicLinks
.getDynamicLink(intent)
.addOnSuccessListener { pendingDynamicLinkData ->
val deepLink: Uri?
if (pendingDynamicLinkData != null) {
deepLink = pendingDynamicLinkData.link
on android debugging its generating the following firebase Link = https://example.in/?meetingCode=userroom?meetingToken%3DeyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1Ni
deepLink?.getQueryParameter("meetingToken")
deepLink?.getQueryParameter("meetingCode")?.let { joinMeeting(it) }
}
}
.addOnFailureListener { _ ->
toast(getString(R.string.main_error_fetch_dynamic_link))
}
}
private fun joinMeeting (meetingCode:String, meetingToken:String) {
MeetingUtils.startMeeting(
this, meetingCode,
meetingToken)
}
meeting Utils.kt file to start meeting
object MeetingUtils {
fun startMeeting(context: Context, meetingCode: String, meetingToken: String)
app deep link url string
<string name="app_deep_link_url">https://example.in/?meetingCode=%1$s?meetingToken=%2$s</string>
this is the share code
private fun onShareMeetingCodeClick() {
tilCodeCreateMeeting.setEndIconOnClickListener {
binding.tilCodeCreateMeeting.error = null
toast(getString(R.string.main_creating_dynamic_link))
Firebase.dynamicLinks.shortLinkAsync {
link = Uri.parse(getString(R.string.app_deep_link_url, getCreateMeetingCode(), getCreateMeetingToken() ))
domainUriPrefix = getString(R.string.app_dynamic_link_url_prefix)
androidParameters {}
navigationInfoParameters {
forcedRedirectEnabled = true // Directly open the link in the app
}
}.addOnSuccessListener { result ->
val shortDynamicLink = result.shortLink.toString()
startShareTextIntent(
getString(R.string.main_share_meeting_code_title),
getString(R.string.main_share_meeting_code_desc, shortDynamicLink)
)
}.addOnFailureListener {
toast(getString(R.string.main_error_create_dynamic_link))
}
Can Someone guide me how to recieve value of getQueryparameter for more than 1 parameter. Thanks in Advance