| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- import { ATKSConfig } from 'anythink_network_ks';
- import { AT_LOCAL_EXTRA_KEY, ATAdError, ATAdInfo, ATRewardVideoAd } from 'anythink_sdk';
- import { YTLog } from '../../../../../../Index';
- import { ContextHelper } from '../../../utils/arkts/utils/ContextHelper';
- import { windowHelper } from '../../../utils/arkts/utils/WindowHelper';
- import { Singleton } from '../../../utils/ts/utils/SingleTon';
- export class TkRewardAd extends Singleton {
- private declare rewardAd: ATRewardVideoAd
- private isLoading: boolean = false
- private declare placementId: string
- init(placementId: string) {
- this.placementId = placementId
- this.rewardAd = new ATRewardVideoAd(this.placementId);
- this.rewardAd.setAdListener({
- onAdLoaded: (): void => {
- this.isLoading = false
- },
- onAdShow: (adInfo: ATAdInfo): void => {
- // this.rewardAd.loadAd({
- // context: ContextHelper.context,
- // localExtraMap: localExtraMap
- // });
- },
- onAdClick: (adInfo: ATAdInfo): void => {
- },
- onAdClose: (adInfo: ATAdInfo): void => {
- this.rewardAd.loadAd({
- context: ContextHelper.context,
- localExtraMap: localExtraMap
- });
- },
- onAdReward: (adInfo: ATAdInfo): void => {
- // this.rewardAd.loadAd({
- // context: ContextHelper.context,
- // localExtraMap: localExtraMap
- // });
- },
- onAdLoadFailed: (adError: ATAdError): void => {
- YTLog.error(adError)
- // IBestToast.show("广告加载失败")
- this.isLoading = false
- },
- onAdVideoPlayStart: (adInfo: ATAdInfo): void => {
- },
- onAdVideoPlayEnd: (adInfo: ATAdInfo): void => {
- this.rewardAd.loadAd({
- context: ContextHelper.context,
- localExtraMap: localExtraMap
- });
- },
- onAdVideoPlayFailed: (adError: ATAdError, adInfo?: ATAdInfo | undefined): void => {
- },
- onAdOtherStatus: (adInfo?: ATAdInfo): void => {
- }
- });
- const localExtraMap: Record<string, Object> = {};
- //支持透传以下参数给广告平台:比如userId,详见AT_LOCAL_EXTRA_KEY
- localExtraMap[AT_LOCAL_EXTRA_KEY.USER_ID] = "your user id";
- // 仅针对快手平台的广告配置
- localExtraMap[ATKSConfig.VIDEO_AUTO_PLAY_TYPE_KEY] = 3; //设置不自动播放
- this.rewardAd.loadAd({
- context: ContextHelper.context,
- localExtraMap: localExtraMap
- });
- this.isLoading = true
- return this.rewardAd
- }
- showRewardAd() {
- if (!this.isLoading) {
- if (this.rewardAd.isAdReady()) {
- this.rewardAd.showAd(ContextHelper.context, {
- windowStage: windowHelper.windowStage //在UIAbility的onWindowStageCreate(windowStage: window.WindowStage)中获取
- });
- }
- }
- }
- }
- export const tkRewardAd = TkRewardAd.getInstance();
|