package Ġio . github . nullptr x . p angle flutter . view Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Frame Layout Ċ import Ġandroid . widget . Toast Ċ import Ġcom . by ted ance . ms dk . adapter . p angle . P angle Network Request Info Ċ import Ġcom . by ted ance . ms dk . api . Ad Error Ċ import Ġcom . by ted ance . ms dk . api . TT Network Request Info Ċ import Ġcom . by ted ance . ms dk . api . splash . TT Splash Ad Ċ import Ġcom . by ted ance . ms dk . api . splash . TT Splash Ad Listener Ċ import Ġcom . by ted ance . ms dk . api . splash . TT Splash Ad Load Callback Ċ import Ġcom . by ted ance . sdk . open ad sdk . TT Ad Native Ċ import Ġio . flutter . plugin . common . Binary Messenger Ċ import Ġio . flutter . plugin . common . MethodCall Ċ import Ġio . flutter . plugin . common . Method Channel Ċ import Ġio . flutter . plugin . platform . Platform View Ċ import Ġio . github . nullptr x . p angle flutter . util . as Map Ċ import Ġio . github . nullptr x . p angle flutter . v 2 . TT Ad Slot Manager Ċ Ċ class ĠFlutter Splash View ( val Ġcontext : ĠContext , Ġmess enger : ĠBinary Messenger , Ġval Ġid : ĠInt , Ġparams : ĠMap < String , ĠAny ?> ) Ġ: ĠPlatform View , ĠMethod Channel . MethodCall Handler , ĠTT Ad Native . Splash Ad Listener Ġ{ ĊĊĠ Ġprivate Ġval Ġmethod Channel : ĠMethod Channel Ġ= ĠMethod Channel ( messenger , Ġ" nullptr x . github . io / p angle _ splash view _$ id ") ĊĠ Ġprivate Ġval Ġcontainer : ĠFrame Layout ĊĠ Ġprivate Ġvar Ġhide Skip Button Ġ= Ġfalse ĊĊĠ Ġinit Ġ{ ĊĠĠĠ Ġmethod Channel . set MethodCall Handler ( this ) ĊĠĠĠ Ġcontainer Ġ= ĠFrame Layout ( context ) ĊĠĠĠ Ġval Ġslot Id Ġ= Ġparams [" slot Id "] Ġas ? ĠString ĊĊĠĠĠ ĠToast . makeText ( context , Ġslot Id , ĠToast . LENGTH _ LONG ). show () ĊĊĠĠĠ Ġif Ġ( slot Id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠ Ġval Ġis Support Deep Link Ġ= Ġparams [" is Support Deep Link "] Ġas ? ĠBoolean Ġ?: Ġtrue ĊĠĠĠĠĠ Ġval Ġtol erate Timeout Ġ= Ġparams [" tol erate Timeout "] Ġas ĠDouble ? ĊĠĠĠĠĠ Ġhide Skip Button Ġ= Ġparams [" hide Skip Button "] Ġas ? ĠBoolean Ġ?: Ġfalse ĊĊĠĠĠĠĠ Ġval Ġimg Args : ĠMap < String , ĠInt ?> Ġ= Ġparams [" image Size "] ?. as Map () Ġ?: Ġmap Of () ĊĠĠĠĠĠ Ġval Ġw : ĠInt Ġ= Ġimg Args [" width "] Ġ?: Ġ 1 0 8 0 ĊĠĠĠĠĠ Ġval Ġh : ĠInt Ġ= Ġimg Args [" height "] Ġ?: Ġ 1 9 2 0 ĊĊĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠ Ġ* Ġ æ³¨ ï¼ļ æ¯ıæ¬¡ åĬłè½½ å¼Ģ å±ı å¹¿åĳĬ çļĦæĹ¶åĢĻ éľĢè¦ģ æĸ°å»º ä¸Ģä¸ª TT Splash Ad ï¼Į åĲ¦åĪĻ åı¯èĥ½ä¼ļ åĩºçİ° å¹¿åĳĬ å¡« åħħ éĹ®é¢ĺ ĊĠĠĠĠĠĠ Ġ* Ġï¼Ī Ġ ä¾ĭå¦Ĥ ï¼ļ m TT Splash Ad Ġ= Ġnew ĠT TS pl ash Ad ( this , Ġm Ad Unit Id ); ï¼ī ĊĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠ Ġvar Ġm TT Splash Ad Ġ= ĠT TS pl ash Ad ( context Ġas ĠActivity ?, Ġslot Id ) ĊĠĠĠĠĠ Ġm TT Splash Ad . set TT Ad Splash Listener ( object Ġ: ĠT TS pl ash Ad Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Clicked () Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġpost Message (" onClick ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Show () Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġpost Message (" on Show ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġshow å¤±è´¥ åĽŀè°ĥ ãĢĤ å¦Ĥæŀľ show æĹ¶ åıĳçİ° æĹł åı¯çĶ¨ å¹¿åĳĬ ï¼Ī æ¯Ķå¦Ĥ å¹¿åĳĬ è¿ĩ æľŁ ï¼īï¼Į ä¼ļ è§¦åıĳ è¯¥ åĽŀè°ĥ ãĢĤ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ å¼Ģåıĳ èĢħ åºĶè¯¥ ç»ĵ åĲĪ èĩªå·±çļĦ å¹¿åĳĬ åĬłè½½ ãĢģ å±ķç¤º æµģç¨ĭ ï¼Į åľ¨ è¯¥ åĽŀè°ĥ éĩĮ è¿Ľè¡Į éĩįæĸ° åĬłè½½ ãĢĤ ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġad Error Ġshow Fail çļĦ åħ·ä½ĵ åİŁåĽł ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Show Fail ( ad Error : ĠAd Error ) Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġpost Message (" onError ", Ġmap Of (" message " Ġto Ġad Error . message , Ġ" code " Ġto Ġad Error . code )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Skip () Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġpost Message (" on Skip ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Dismiss () Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġpost Message (" on Time Over ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠ Ġ// step 3 : åĪĽå»º å¼Ģ å±ı å¹¿åĳĬ è¯·æ±Ĥ åıĤæķ° Ad Slot , åħ·ä½ĵ åıĤæķ° åĲ« ä¹ī åıĤèĢĥ æĸĩæ¡£ ĊĊĠĠĠĠĠ Ġval Ġad Slot Ġ= ĠTT Ad Slot Manager . get Splash Ad Slot ( w , Ġh , Ġis Support Deep Link ); ĊĊĊĠĠĠĠĠ Ġ// step 4 : è¯·æ±Ĥ å¹¿åĳĬ ï¼Į è°ĥçĶ¨ å¼Ģ å±ı å¹¿åĳĬ å¼ĤæŃ¥ è¯·æ±Ĥ æİ¥åı£ ï¼Į å¯¹ è¯·æ±Ĥ åĽŀè°ĥ çļĦ å¹¿åĳĬ ä½ľ æ¸²æŁĵ å¤ĦçĲĨ ĊĠĠĠĠĠ Ġm TT Splash Ad . load Ad ( ad Slot , object Ġ: ĠT TS pl ash Ad Load Callback Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Splash Ad Load Fail ( ad Error : ĠAd Error ) Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġpost Message (" onError ", Ġmap Of (" message " Ġto Ġad Error . message , Ġ" code " Ġto Ġad Error . code )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Splash Ad Load Success () Ġ{ ĊĠĠĠĠĠĠĠĠĠ Ġif Ġ( m TT Splash Ad Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm TT Splash Ad . show Ad ( container ) ĊĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Ad Load Timeout () Ġ{ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ}, Ġ 3 0 0 0 ) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġget View (): ĠView Ġ{ ĊĠĠĠ Ġreturn Ġcontainer ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġdispose () Ġ{ ĊĠĠĠ Ġmethod Channel . set MethodCall Handler ( null ) ĊĠĠĠ Ġcontainer . removeAll Views () ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠonError ( code : ĠInt , Ġmessage : ĠString ?) Ġ{ ĊĠĠĠ Ġpost Message (" onError ", Ġmap Of (" message " Ġto Ġmessage , Ġ" code " Ġto Ġcode )) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġon Timeout () Ġ{ ĊĠĠĠ Ġpost Message (" onError ", Ġmap Of (" message " Ġto Ġ" timeout ", Ġ" code " Ġto Ġ- 1 )) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġon Splash Ad Load ( p 0 : Ġcom . by ted ance . sdk . open ad sdk . TT Splash Ad ?) Ġ{ ĊĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠ Ġ} ĊĊĊĠ Ġoverride Ġfun Ġon MethodCall ( call : ĠMethod Call , Ġresult : ĠMethod Channel . Result ) Ġ{ ĊĊĠĠĠ Ġwhen Ġ( call . method ) Ġ{ ĊĠĠĠĠĠ Ġelse Ġ-> Ġresult . not Implemented () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġprivate Ġfun Ġpost Message ( method : ĠString , Ġarguments : ĠMap < String , ĠAny ?> Ġ= Ġmap Of ()) Ġ{ ĊĠĠĠ Ġmethod Channel . invoke Method ( method , Ġarguments ) ĊĠ Ġ} Ċ } ĊĊ