// ĠThe ĠMIT ĠLicense Ġ( MIT ) Ċ // Ċ // ĠCopyright Ġ( c ) Ġ 2 0 1 8 ĠPub Native ĠGmbH Ċ // Ċ // ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ċ // Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ċ // Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ċ // Ġto Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ċ // Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ċ // Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ // Ċ // ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ċ // Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ // Ċ // ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ // ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ // ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE Ċ // ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER Ċ // ĠLIABILITY , ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , Ċ // ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE Ċ // ĠSOFTWARE . Ċ // Ċ package Ġnet . pub native . lite . demo . ui . fragments . hy bid Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . os . Handler Ċ import Ġandroid . os . Looper Ċ import Ġandroid . text . TextUtils Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget .* Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . recyclerview . widget . Default Item Animator Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġnet . pub native . lite . demo . Constants Ċ import Ġnet . pub native . lite . demo . R Ċ import Ġnet . pub native . lite . demo . ui . activities . Tab Activity Ċ import Ġnet . pub native . lite . demo . ui . adapters . In Feed Adapter Ċ import Ġnet . pub native . lite . demo . ui . listeners . In Feed Ad Listener Ċ import Ġnet . pub native . lite . demo . util . Clipboard Utils Ċ import Ġnet . pub native . lite . sdk . Hy Bid Error Ċ import Ġnet . pub native . lite . sdk . models . Ad Size Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġeros gar ci ap ont e Ġon Ġ 3 0 . 0 1 . 1 8 . Ċ Ġ*/ Ċ class ĠHy Bid In Feed Fragment Ġ: ĠFragment ( R . layout . fragment _ hy bid _ in feed _ banner ), ĠIn Feed Ad Listener Ġ{ ĊĠĠĠ Ġval ĠTAG Ġ= ĠHy Bid In Feed Fragment :: class . java . simple Name ĊĊĠĠĠ Ġprivate Ġval ĠAUTO _ REFRESH _ M ILL IS Ġ: ĠLong Ġ= Ġ 3 0 Ġ* Ġ 1 0 0 0 ĊĊĠĠĠ Ġprivate Ġvar Ġzone Id : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval Ġhandler Ġ= ĠHandler ( Looper . get Main Looper ()) ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġauto Refresh Switch : ĠSwitch ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġload Button : ĠButton ĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠerrorCode View : ĠTextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġerror View : ĠTextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġad Size Spinner : ĠSp inner ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġspinner Adapter : ĠArray Adapter < Ad Size > ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcre ative Id View : ĠTextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġre cyclerView : ĠRecyclerView ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġadapter : ĠIn Feed Adapter ĊĊĠĠĠ Ġprivate Ġval Ġad Sizes Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 3 0 0 x 2 5 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 3 2 0 x 5 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 1 6 0 x 6 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 2 5 0 x 2 5 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 3 0 0 x 5 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 3 0 0 x 6 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 3 2 0 x 1 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 3 2 0 x 4 8 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 4 8 0 x 3 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 7 2 8 x 9 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 7 6 8 x 1 0 2 4 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAd Size . SIZE _ 1 0 2 4 x 7 6 8 ) ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġerror View Ġ= Ġview . findViewById ( R . id . view _ error ) ĊĠĠĠĠĠĠĠ ĠerrorCode View Ġ= Ġview . findViewById ( R . id . view _ error _ code ) ĊĠĠĠĠĠĠĠ Ġcre ative Id View Ġ= Ġview . findViewById ( R . id . view _ creative _ id ) ĊĠĠĠĠĠĠĠ Ġload Button Ġ= Ġview . findViewById ( R . id . button _ load ) ĊĠĠĠĠĠĠĠ Ġre cyclerView Ġ= Ġview . findViewById ( R . id . list ) ĊĠĠĠĠĠĠĠ Ġad Size Spinner Ġ= Ġview . findViewById ( R . id . spinner _ ad _ size ) ĊĠĠĠĠĠĠĠ Ġauto Refresh Switch Ġ= Ġview . findViewById ( R . id . check _ auto _ refresh ) ĊĊĠĠĠĠĠĠĠ Ġauto Refresh Switch . isChecked Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġzone Id Ġ= Ġactivity ?. intent ?. getString Extra ( Constants . Intent Params . ZONE _ ID ) ĊĊĠĠĠĠĠĠĠ Ġadapter Ġ= ĠIn Feed Adapter ( zone Id !! , Ġthis ) ĊĊĠĠĠĠĠĠĠ Ġre cyclerView . layout Manager Ġ= ĠLinearLayoutManager ( context , ĠRecyclerView . VERTICAL , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġre cyclerView . item Animator Ġ= ĠDefault Item Animator () ĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= Ġadapter ĊĊĠĠĠĠĠĠĠ Ġload Button . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= Ġactivity Ġas ĠTab Activity ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandler . remove Callbacks And Messages ( null ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . notify Ad Clean ed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġload PN Ad () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġauto Refresh () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġerror View . setOnClickListener Ġ{ ĠClip board Utils . copy To Clipboard ( require Activity (), Ġerror View . text . toString ()) Ġ} ĊĠĠĠĠĠĠĠ Ġcre ative Id View . setOnClickListener Ġ{ ĠClip board Utils . copy To Clipboard ( require Activity (), Ġcre ative Id View . text . toString ()) Ġ} ĊĊĠĠĠĠĠĠĠ Ġspinner Adapter Ġ= ĠArray Adapter ( require Activity (), Ġandroid . R . layout . simple _ spinner _ item , Ġad Sizes ) ĊĠĠĠĠĠĠĠ Ġad Size Spinner . adapter Ġ= Ġspinner Adapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġload PN Ad () Ġ{ ĊĠĠĠĠĠĠĠ Ġerror View . text Ġ= Ġ"" ĊĊĠĠĠĠĠĠĠ Ġval Ġad Size Ġ= Ġad Sizes [ ad Size Spinner . selected Item Position ] ĊĠĠĠĠĠĠĠ Ġadapter . load With Ad ( ad Size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġauto Refresh (){ ĊĠĠĠĠĠĠĠ Ġif Ġ( auto Refresh Switch . isChecked ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandler . post Delayed ({ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġload PN Ad () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġauto Refresh () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĠAUTO _ REFRESH _ M ILL IS ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandler . remove Callbacks And Messages ( null ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View () ĊĠĠĠĠĠĠĠ Ġhandler . remove Callbacks And Messages ( null ); ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġ--------------- ĠIn Feed Ad Listener ĠListener Ġ-------------------- ĊĊĠĠĠ Ġoverride Ġfun Ġon In Feed Ad Loaded () Ġ{ ĊĠĠĠĠĠĠĠ Ġdisplay Logs () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon In Feed Ad Load Error ( error : ĠThrowable ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( error Ġ!= Ġnull Ġ&& Ġerror Ġis ĠHy Bid Error ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . e ( TAG , Ġerror . message Ġ?: Ġ" Ġ- Ġ") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠerrorCode View . text Ġ= Ġerror . errorCode . code . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġerror View . text Ġ= Ġerror . message Ġ?: Ġ" Ġ- Ġ" ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠerrorCode View . text Ġ= Ġ" Ġ- Ġ" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġerror View . text Ġ= Ġ" Ġ- Ġ" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdisplay Logs () ĊĠĠĠĠĠĠĠ Ġcre ative Id View . text Ġ= Ġ"" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon In Feed Ad Creative Id ( creative Id : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! TextUtils . isEmpty ( creative Id )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcre ative Id View . text Ġ= Ġcre ative Id ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġdisplay Logs () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( activity Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= Ġactivity Ġas ĠTab Activity ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . notify Ad Updated () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }