package Ġcom . br uno . native _ ad mob _ flutter . re warded Ċ Ċ import Ġandroid . app . Activity Ċ import Ġcom . br uno . native _ ad mob _ flutter . Request Factory Ċ import Ġcom . br uno . native _ ad mob _ flutter . encode Error Ċ import Ġcom . google . android . gms . ads . Ad Error Ċ import Ġcom . google . android . gms . ads . FullScreen Content Callback Ċ import Ġcom . google . android . gms . ads . Load Ad Error Ċ import Ġcom . google . android . gms . ads . re warded . Rew arded Ad Ċ import Ġcom . google . android . gms . ads . re warded . Rew arded Ad Load Callback Ċ import Ġio . flutter . plugin . common . Binary Messenger Ċ import Ġio . flutter . plugin . common . MethodCall Ċ import Ġio . flutter . plugin . common . Method Channel Ċ Ċ class ĠRew arded Ad Controller ( ĊĠĠĠĠĠĠĠ Ġval Ġid : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġchannel : ĠMethod Channel , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġactivity : ĠActivity Ċ ) Ġ: ĠMethod Channel . MethodCall Handler Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġre warded Ad : ĠRew arded Ad ? Ġ= Ġnull ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġchannel . set MethodCall Handler ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon MethodCall ( call : ĠMethod Call , Ġresult : ĠMethod Channel . Result ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( call . method ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" load Ad " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" loading ", Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġunit Id : ĠString Ġ= Ġcall . argument < String >(" unit Id ") !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnon Personal ized Ads Ġ= Ġcall . argument < Boolean >(" non Personal ized Ads ") !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRew arded Ad . load ( activity , Ġunit Id , ĠRequest Factory . create Ad Request ( non Personal ized Ads ), Ġobject Ġ: ĠRew arded Ad Load Callback () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Loaded ( ad : ĠRew arded Ad ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre warded Ad Ġ= Ġad ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" on Ad Loaded ", Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Rew arded Ad Failed To Load ( error : ĠLoad Ad Error ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" on Ad Failed To Load ", Ġencode Error ( error )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" show " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( re warded Ad Ġ== Ġnull ) Ġreturn Ġresult . success ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre warded Ad !!. full Screen Content Callback Ġ= Ġobject Ġ: ĠFull Screen Content Callback () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Dis missed FullScreen Content () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" on Ad Dis missed FullScreen Content ", Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Failed To Show FullScreen Content ( error : ĠAd Error ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" on Ad Failed To Show FullScreen Content ", Ġencode Error ( error )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Show ed FullScreen Content () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre warded Ad Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" on Ad Show ed FullScreen Content ", Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre warded Ad !!. show ( activity ) Ġ{ Ġreward Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel . invoke Method (" on User E arn ed Reward ", Ġhash Map Of < String , ĠAny >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" amount " Ġto Ġreward . amount , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" type " Ġto Ġreward . type ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġresult . not Implemented () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ object ĠRew arded Ad Controller Manager Ġ{ ĊĠĠĠ Ġprivate Ġval Ġcontrollers : ĠArrayList < Rew arded Ad Controller > Ġ= Ġarray ListOf () ĊĊĠĠĠ Ġfun Ġcreate Controller ( id : ĠString , Ġbinary Messenger : ĠBinary Messenger , Ġactivity : ĠActivity ): ĠRew arded Ad Controller Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( get Controller ( id ) Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmethod Channel Ġ= ĠMethod Channel ( binary Messenger , Ġid ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontroller Ġ= ĠRew arded Ad Controller ( id , Ġmethod Channel , Ġactivity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontrollers . add ( controller ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcontroller ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġget Controller ( id ) !! ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Controller ( id : ĠString ): ĠRew arded Ad Controller ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontrollers . first OrNull Ġ{ Ġit . id Ġ== Ġid Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġremove Controller ( id : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġindex Ġ= Ġcontrollers . indexOf First Ġ{ Ġit . id Ġ== Ġid Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ>= Ġ 0 ) Ġcontrollers . remove At ( index ) ĊĠĠĠ Ġ} Ċ }