TkBannerAd.ets 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { ATAdError, ATBannerAd, BannerAd } from 'anythink_sdk';
  2. import { YTLog } from '../../../../../../Index';
  3. import { ContextHelper } from '../../../utils/arkts/utils/ContextHelper';
  4. import { Singleton } from '../../../utils/ts/utils/SingleTon';
  5. export class TkBannerAd extends Singleton {
  6. declare onAdLoaded: () => void
  7. bannerAd?: BannerAd;
  8. isLoaded: boolean = false
  9. atBannerAd?: ATBannerAd;
  10. private declare placementId: string;
  11. init(placementId: string) {
  12. this.placementId = placementId
  13. this.atBannerAd = new ATBannerAd(this.placementId);
  14. this.atBannerAd.setAdListener({
  15. onAdLoaded: () => {
  16. this.onAdLoaded?.()
  17. // this.isLoaded = true
  18. // this.bannerAd = this.atBannerAd?.getBannerAd()
  19. },
  20. onAdLoadFailed: (adError: ATAdError): void => {
  21. YTLog.error(adError, 'bannerAd')
  22. }
  23. });
  24. }
  25. loadBannerAd() {
  26. this.atBannerAd?.loadAd({
  27. context: ContextHelper.context,
  28. uiContext: ContextHelper.UIContext
  29. })
  30. }
  31. }
  32. export const tkBannerAd = TkBannerAd.getInstance();