TkBannerAdComp.ets 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { ATAdError, ATAdInfo, BuildATBannerAdView } from 'anythink_sdk';
  2. import { TkBannerAd, tkBannerAd } from '../utils/TkBannerAd';
  3. @Component
  4. export struct TkBannerAdComp {
  5. @State private tkBannerAd: TkBannerAd = tkBannerAd
  6. aboutToAppear(): void {
  7. // this.tkBannerAd.loadBannerAd()
  8. this.tkBannerAd.atBannerAd?.loadAd({
  9. context: getContext(),
  10. uiContext: this.getUIContext()
  11. })
  12. this.tkBannerAd.onAdLoaded = () => {
  13. this.tkBannerAd.isLoaded = true
  14. this.tkBannerAd.bannerAd = this.tkBannerAd.atBannerAd?.getBannerAd()
  15. }
  16. }
  17. build() {
  18. if (this.tkBannerAd.isLoaded && this.tkBannerAd.bannerAd) {
  19. Column() {
  20. BuildATBannerAdView(this.tkBannerAd.atBannerAd!.getBannerAd()!, {
  21. onAdShow: (adInfo: ATAdInfo): void => {
  22. // console.log('aaa', JSON.stringify(adInfo))
  23. },
  24. onAdClick: (adInfo: ATAdInfo): void => {
  25. },
  26. onAdClose: (adInfo: ATAdInfo): void => {
  27. this.tkBannerAd.isLoaded = false
  28. },
  29. onAdAutoRefreshed: (adInfo: ATAdInfo): void => {
  30. },
  31. onAdAutoRefreshFailed: (adError: ATAdError): void => {
  32. }
  33. })
  34. }
  35. .width('100%')
  36. .height(50)
  37. .backgroundColor(Color.Yellow)
  38. }
  39. }
  40. }