package Ġcom . y iq i . news . mvp . presenter Ċ Ċ import Ġandroid . app . Application Ċ import Ġcom . google . gson . Gson Ċ Ċ import Ġcom . j ess . arms . integration . App Manager Ċ import Ġcom . j ess . arms . di . scope . Activity Scope Ċ import Ġcom . j ess . arms . mvp . Base Presenter Ċ import Ġcom . j ess . arms . http . image loader . Image Loader Ċ import Ġcom . y iq i . news . app . service . UserController Ċ import Ġcom . y iq i . news . app . utils . Pre Utils Ċ import Ġcom . y iq i . news . app . utils . Rx Utils Ċ import Ġcom . y iq i . news . entity . Base Response Ċ import Ġcom . y iq i . news . entity . News Ċ import Ġcom . y iq i . news . entity . News Response Ċ import Ġcom . y iq i . news . entity . User Ċ import Ġme . j ess yan . rx error handler . core . Rx ErrorHandler Ċ import Ġjavax . inject . Inject Ċ Ċ import Ġcom . y iq i . news . mvp . contract . Login Contract Ċ import Ġcom . y iq i . news . mvp . model . api . Http Constant Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . schedul ers . Schedulers Ċ import Ġme . j ess yan . rx error handler . handler . Error Handle Subscriber Ċ import Ġjava . util . ArrayList ĊĊ Ċ /** Ċ Ġ* Ġ================================= =============== Ċ Ġ* ĠDescription : Ċ Ġ* Ġ< p > Ċ Ġ* ĠCreated Ġby ĠM VP Ar ms Template Ġon Ġ 0 6 / 0 6 / 2 0 1 9 Ġ 1 3 : 4 7 Ċ Ġ* Ġ< a Ġhref =" mailto : j ess . yan . eff ort @ gmail . com "> Contact Ġme </ a > Ċ Ġ* Ġ< a Ġhref =" https :// github . com / J ess Y an Coding "> Follow Ġme </ a > Ċ Ġ* Ġ< a Ġhref =" https :// github . com / J ess Y an Coding / M VP Ar ms "> Star Ġme </ a > Ċ Ġ* Ġ< a Ġhref =" https :// github . com / J ess Y an Coding / M VP Ar ms / wiki "> See Ġme </ a > Ċ Ġ* Ġ< a Ġhref =" https :// github . com / J ess Y an Coding / M VP Ar ms Template "> æ¨¡ çīĪ è¯· ä¿ĿæĮģ æĽ´æĸ° </ a > Ċ Ġ* Ġ================================= =============== Ċ Ġ*/ Ċ @ Activity Scope Ċ class ĠLogin Presenter Ċ @ Inject Ċ constructor ( model : ĠLogin Contract . Model , Ġroot View : ĠLogin Contract . View ) Ġ: ĊĠĠĠĠĠĠĠ ĠBase Presenter < Login Contract . Model , ĠLogin Contract . View >( model , Ġroot View ) Ġ{ ĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm ErrorHandler : ĠRx ErrorHandler ĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm Application : ĠApplication ĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm Image Loader : ĠImage Loader ĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġm App Manager : ĠApp Manager ĊĊĊĠĠĠ Ġfun Ġsend Code ( mobile : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Model . send Code ( mobile ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. compose ( Rx Utils . apply Schedulers ( m Root View )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ( object Ġ: ĠError Handle Subscriber < Base Response < User >>( m ErrorHandler ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Next ( t : ĠBase Response < User >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Root View . show Code Success () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġlogin ( mobile : ĠString , Ġpwd : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Model . login ( mobile , Ġpwd ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. compose ( Rx Utils . apply Schedulers ( m Root View )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ( object Ġ: ĠError Handle Subscriber < Base Response < User >>( m ErrorHandler ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Next ( t : ĠBase Response < User >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( t . code Ġ== ĠHttp Constant . LOGIN _ NOT _ BIND ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Root View . show Un Bind () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Root View . show Login Success () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠ Ġ} Ċ } Ċ