package Ġcn . bine a . plugin framework demo . activity _ manager Ċ Ċ import Ġandroid . content . Component Name Ċ import Ġandroid . content . Intent Ċ import Ġandroid . util . Log Ċ import Ġcn . bine a . plugin framework demo . AM SH ook Helper Ċ import Ġcn . bine a . plugin framework demo . Invocation Handler Base Ċ import Ġjava . lang . reflect . Method Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġb ine a Ġon Ġ 5 / 1 0 / 2 0 1 7 . Ċ Ġ*/ Ċ class ĠActivity Manager Handler Kt ( base : ĠAny ?) Ġ: ĠInvocation Handler Base ( base ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠTAG Ġ= ĠActivity Manager Handler Kt :: class . java . canonical Name ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinvoke ( proxy : ĠAny ?, Ġmethod : ĠMethod ?, Ġargs : ĠArray < Any >? ): ĠAny Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(" startActivity " Ġ== Ġmethod !!. name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġindex Ġ= Ġargs !!. indices . first OrNull Ġ{ Ġargs [ it ] Ġis ĠIntent Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġ- 1 ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( index Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= Ġargs [ index ] Ġas ĠIntent ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnew Intent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstub Package Ġ= Ġ" cn . bine a . plugin framework demo " ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcomponent Name Ġ= ĠComponent Name ( stub Package , ĠStub Activity :: class . java . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnew Intent . component Ġ= Ġcomponent Name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnew Intent . putExtra ( AM SH ook Helper . EXTRA _ TARGET _ INT ENT , Ġintent ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs [ index ] Ġ= Ġnew Intent ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . d ( TAG , Ġ" hook Ġsuccess ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġmethod . invoke ( base , Ġargs ) ĊĠĠĠ Ġ} Ċ }