У меня есть решение, чтобы сделать это динамическим:
выполните следующую команду:
ionic g service services/admob
Поместите следующий код в созданный вами сервис:
import { Injectable } from '@angular/core';
import {AdMobFree, AdMobFreeBannerConfig} from '@ionic-native/admob-free/ngx';
import { Platform } from '@ionic/angular';
@Injectable({
providedIn: 'root'
})
export class AdmobService {
constructor(private admobFree: AdMobFree, public platform: Platform) { }
BannerAd(admobid: string) {
this.platform
.ready()
.then(() => {
const bannerConfig: AdMobFreeBannerConfig = {
id: admobid,
isTesting: true,
autoShow: false
};
this.admobFree.banner.config(bannerConfig);
this.admobFree.banner
.prepare()
.then(() => {
this.admobFree.banner.show();
})
.catch(e => console.log(e));
})
.catch(e => console.log(e));
}
}
Введите сервис на странице, которую вы хотите, как это:
constructor(private admob: AdmobService) { }
И вызовите метод, который у вас есть в сервисе, как это:
id = "YOUR ID";
ngOnInit() {
this.admob.BannerAd(this.id);
}
Теперь у вас есть сервис, который можно использовать повторно.
Надеюсь, это поможет вам!