package Ġru . mon keys . monkey app . screens . dee plink Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġcom . air bnb . dee plink dispatch . Deep Link Ċ import Ġcom . air bnb . dee plink dispatch . Deep Link Entry Ċ import Ġcom . air bnb . dee plink dispatch . Deep Link Uri Ċ import Ġcom . facebook . appl inks . App Link Data Ċ import Ġru . mon keys . monkey app . screens . main . Splash Activity Ċ import Ġru . mon keys . monkey app . utils . Base Activity Ċ Ċ class ĠDeep Link Activity Ġ: ĠBase Activity () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġif Ġ( intent . data Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparse Url ( intent . data . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Splash () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠApp Link Data . fetch Deferred App Link Data ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparse Url ( it . target Uri . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Splash () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġopen Splash () Ġ{ ĊĠĠĠĠĠĠĠ ĠstartActivity ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIntent ( this , ĠSpl ash Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. put Extras ( intent . extras )) ĊĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġparse Url ( string Url : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( string Url . isNull OrEmpty ()) Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġdeep Link Uri Ġ= ĠDeep Link Uri . parse ( string Url ) ĊĠĠĠĠĠĠĠ Ġval Ġparameter Map Ġ= ĠDeep Link Entry ( string Url , ĠDeep Link Entry . Type . METHOD , Ġnull , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. getParameters ( string Url ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( query Parameter Ġin Ġdeep Link Uri . query Parameter Names ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( query Parameter Value Ġin Ġdeep Link Uri . query Parameter Values ( query Parameter )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( parameter Map . containsKey ( query Parameter )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . w (" DE E PL INK "," Duplicate Ġparameter Ġname Ġin Ġpath Ġand Ġquery Ġparam : Ġ$ query Parameter ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparameter Map [ query Parameter ] Ġ= Ġquery Parameter Value ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġparameter Map [ Deep Link . URI ] Ġ= Ġstring Url ĊĠĠĠĠĠĠĠ Ġval Ġparameters Ġ= ĠBundle () ĊĠĠĠĠĠĠĠ Ġfor Ġ( parameter Entry Ġin Ġparameter Map . entries ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparameters . putString ( parameter Entry . key , Ġparameter Entry . value ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠ Ġintent . put Extras ( parameters ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra ( Deep Link . IS _ DE EP _ LINK , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġintent . putExtra ( Deep Link . REF ERR ER _ URI , Ġstring Url ) ĊĠĠĠĠĠĠĠ Ġthis . intent . put Extras ( intent ) ĊĠĠĠ Ġ} Ċ }