package Ġme . w cy . router Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Parcelable Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġme . w cy . router . starter . Router Starter Factory Ċ import Ġjava . io . Serializable Ċ import Ġjava . lang . ref . Weak Reference Ċ Ċ /** Ċ Ġ* Ġ è·¯çĶ± è¯·æ±Ĥ ï¼Į çĶ¨äºİ è®¾ç½® è¯·æ±Ĥ ä¿¡æģ¯ Ċ Ġ*/ Ċ class ĠRequest Ġinternal Ġconstructor ( builder : ĠBuilder ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġcontext Ref : ĠWeak Reference < Context > ĊĠĠĠ Ġprivate Ġval Ġuri : ĠUri ? ĊĠĠĠ Ġprivate Ġval Ġtarget : ĠClass < *> ? ĊĠĠĠ Ġprivate Ġval Ġintent : ĠIntent ? ĊĠĠĠ Ġprivate Ġval Ġextras : ĠIntent ĊĠĠĠ Ġprivate Ġval Ġflags : ĠInt ĊĠĠĠ Ġprivate Ġval Ġneed Login : ĠBoolean ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . context Ref Ġ= Ġbuilder . context Ref !! ĊĠĠĠĠĠĠĠ Ġthis . uri Ġ= Ġbuilder . uri ĊĠĠĠĠĠĠĠ Ġthis . target Ġ= Ġbuilder . target ĊĠĠĠĠĠĠĠ Ġthis . intent Ġ= Ġbuilder . intent ĊĠĠĠĠĠĠĠ Ġthis . extras Ġ= Ġbuilder . extras ĊĠĠĠĠĠĠĠ Ġthis . flags Ġ= Ġbuilder . flags ĊĠĠĠĠĠĠĠ Ġthis . need Login Ġ= Ġbuilder . need Login ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠçĶŁæĪĲ æĸ°çļĦ æŀĦå»º åĻ¨ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠnewBuilder (): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠBuilder ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ ä¸Ĭä¸ĭ æĸĩ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġcontext (): ĠContext Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext Ref . get () Ġ?: Ġthrow ĠIllegalStateException (" context Ġis Ġre cyc led ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ ĠURI ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġuri (): ĠUri ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġuri ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ çĽ®æłĩ ç±»åŀĭ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġtarget (): ĠClass < *> ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtarget ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ æĦı åĽ¾ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġintent (): ĠIntent ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġintent ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġextras (): ĠIntent Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġextras ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġèİ·åıĸ æĹ Ĺ å¸ ľ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġflags (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġflags ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġæĺ¯åĲ¦ éľĢè¦ģ çĻ»å½ķ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġneed Login (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġneed Login ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Request ( context Ref =$ context Ref , Ġuri =$ uri , Ġtarget =$ target , Ġintent =$ intent , Ġextras =$ extras , Ġflags =$ flags , Ġneed Login =$ need Login )" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ è·¯çĶ± è¯·æ±Ĥ æŀĦå»º åĻ¨ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġclass ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġcontext Ref : ĠWeak Reference < Context >? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġuri : ĠUri ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġtarget : ĠClass < *> ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġintent : ĠIntent ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġextras : ĠIntent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġflags : ĠInt Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġneed Login Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġconstructor () ĊĊĠĠĠĠĠĠĠ Ġinternal Ġconstructor ( request : ĠRequest ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . context Ref Ġ= Ġrequest . context Ref ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . uri Ġ= Ġrequest . uri ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . target Ġ= Ġrequest . target ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . intent Ġ= Ġrequest . intent ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . extras Ġ= Ġrequest . extras ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . flags Ġ= Ġrequest . flags ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . need Login Ġ= Ġrequest . need Login ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® ä¸Ĭä¸ĭ æĸĩ ï¼Į å¿ħé¡» ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġcontext ( context : ĠContext ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ref Ġ= ĠWeak Reference ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® ĠURI ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġuri ( uri : ĠUri ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . uri Ġ= Ġuri ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® ĠURL ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġurl ( url : ĠString ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġuri ( Uri . parse ( url )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® çĽ®æłĩ ç±»åŀĭ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġtarget ( target : ĠClass < *> ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . target Ġ= Ġtarget ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® æĦı åĽ¾ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġintent ( intent : ĠIntent ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . intent Ġ= Ġintent ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® æĹ Ĺ å¸ ľ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġflags ( flags : ĠInt ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . flags Ġ= Ġthis . flags Ġor Ġflags ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextras ( src : ĠIntent ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġextras . put Extras ( src ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠBoolean ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠInt ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠLong ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠFloat ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠDouble ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠString ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠSerializable ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® é¢Ŀ å¤ĸ åıĤæķ° ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġextra ( name : ĠString , Ġvalue : ĠParcel able ?): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġextras . putExtra ( name , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġè®¾ç½® æĺ¯åĲ¦ éľĢè¦ģ çĻ»å½ķ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġneed Login ( need Login : ĠBoolean ): ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . need Login Ġ= Ġneed Login ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġthis ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġèİ·åıĸ ĠFragment ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Fragment (): ĠFragment ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( target Ġ!= Ġnull Ġ&& ĠFragment :: class . java . isAssignableFrom ( target )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinstance Ġ= Ġtarget !!. newInstance () Ġas ĠFragment ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinstance . arguments Ġ= Ġextras . extras ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġinstance ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ æŀĦå»º è¯·æ±Ĥ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġbuild (): ĠRequest Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( context Ref Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegalStateException (" context Ġ== Ġnull ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRequest ( this ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åĲ¯åĬ¨ è¯·æ±Ĥ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġstart () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= Ġbuild () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrouter Starter Ġ= ĠRouter Starter Factory . create ( request . context ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrouter Starter . start ( request ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åĲ¯åĬ¨ è¯·æ±Ĥ ï¼Į åħ³æ³¨ è¯·æ±Ĥ ç»ĵæŀľ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Deprecated (" å·² è¿ĩ æĹ¶ ", Ġreplace With Ġ= ĠReplace With (" Kotlin Ġä¸Ń ä½¿çĶ¨ æĽ´ åĬł æĸ¹ä¾¿ çļĦ ĠLambda Ġ è¡¨è¾¾å¼ı ")) ĊĠĠĠĠĠĠĠ Ġfun Ġstart For Result ( listener : ĠResult Listener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlambda Listener : Ġ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ-> ĠUnit Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġrequest Code , ĠresultCode , Ġdata Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Activity Result ( request Code , ĠresultCode , Ġdata ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart For Result ( lambda Listener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ åĲ¯åĬ¨ è¯·æ±Ĥ ï¼Į åħ³æ³¨ è¯·æ±Ĥ ç»ĵæŀľ ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġstart For Result ( listener : Ġ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= Ġbuild () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrouter Starter Ġ= ĠRouter Starter Factory . create ( request . context ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrouter Starter . start For Result ( request , Ġlistener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ