package Ġcom . future game . sdk Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . pm . PackageManager Ċ import Ġandroid . os . Bundle Ċ import Ġcom . future game . sdk . tool . FB Tool Ċ import Ġcom . future game . sdk . tool . Google Tool Ċ import Ġcom . future game . sdk . tool . Log Tool Ċ import Ġcom . future game . sdk . tool . MetaData Tool Ċ import Ġtw . com . tp 6 gl 4 cj 8 6 . android _ http _ tool . Http Tool Ċ import Ġtw . com . tp 6 gl 4 cj 8 6 . android _ http _ tool . Listener . Http Listener Adapter Ċ import Ġtw . com . tp 6 gl 4 cj 8 6 . jj log . JJ Log Ċ import Ġjava . lang . ref . Weak Reference Ċ Ċ object ĠSingleton Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġactivity : ĠWeak Reference < Activity ?> ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval Ġm Floating View : ĠFloating View ? Ġby Ġlazy Ġ{ Ġactivity ?. get ()?. let Ġ{ ĠFloating View ( it ) Ġ} Ġ} ĊĠĠĠ Ġprivate Ġvar ĠmetaData : ĠBundle ? Ġ= Ġnull ĊĊĠĠĠ Ġprivate Ġvar Ġlogin Listener : ĠFuture SDK . Login Listener ? Ġ= Ġnull ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġinit ( activity : ĠActivity ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . activity Ġ= ĠWeak Reference ( activity ) ĊĊĠĠĠĠĠĠĠ Ġinit MetaData ( activity ) ĊĊĠĠĠĠĠĠĠ ĠJ J Log . setIs Log ( MetaData Tool . is Log ()) ĊĊĠĠĠĠĠĠĠ Ġinit Http Tool () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit MetaData ( activity : ĠActivity ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġapplication Info Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . package Manager . getApplication Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . packageName , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPackage Manager . GET _ META _ DATA ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠmetaData Ġ= Ġapplication Info . metaData ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Http Tool () Ġ{ ĊĠĠĠĠĠĠĠ ĠHttp Tool . setIs Application Json ( true ) ĊĠĠĠĠĠĠĠ ĠHttp Tool . set Static Http Listener Adapter ( object Ġ: ĠHttp Listener Adapter () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonSuccess ( data : ĠString ?, Ġlog : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Success ( data , Ġlog ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Tool . log ( log ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Failure ( statusCode : ĠInt , Ġbody : ĠString ?, Ġlog : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Failure ( statusCode , Ġbody , Ġlog ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Tool . log ( log ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġget MetaData (): ĠBundle Ġ= ĠmetaData Ġ?: ĠBundle () ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġshow Floating View () Ġ{ ĊĠĠĠĠĠĠĠ Ġm Floating View ?. show Floating View () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġdo Login ( activity : ĠActivity , Ġlogin Listener : ĠFuture SDK . Login Listener ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġtodo Ġdo Login ĊĠĠĠĠĠĠĠ ĠSingleton . login Listener Ġ= Ġlogin Listener ĊĠĠĠĠĠĠĠ Ġactivity . startActivity ( Intent ( activity , ĠFuture Login Activity :: class . java )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġlogout () Ġ{ ĊĠĠĠĠĠĠĠ ĠFB Tool . logout () ĊĠĠĠĠĠĠĠ ĠGoogle Tool . logout ( activity ?. get ()) ĊĠĠĠ Ġ} Ċ }