Недавно я перенес свой старый проект Cordova iOS / Android на Capacitor и пока очень им доволен. Тем не менее, попробуйте использовать плагин AdMob, рекомендованный в документации по конденсаторам capacitor-community / admob , поскольку документация для плагина показывает только примеры для ioni c с angular или ioni c с реакцией. Я не использую ни то, ни другое, поскольку проект начался за пределами этой экосистемы, поэтому я немного не понимаю, глядя на этот пример ionic / response и пытаюсь понять, как реализовать его без какой-либо из этих структур.
import React from 'react';
import { Redirect, Route } from 'react-router-dom';
import { IonApp, IonRouterOutlet, isPlatform } from '@ionic/react';
import { IonReactRouter } from '@ionic/react-router';
import Home from './pages/Home';
import { Plugins } from '@capacitor/core';
import { AdOptions, AdSize, AdPosition } from '@capacitor-community/admob';
const { AdMob } = Plugins;
const App: React.FC = () => {
AdMob.initialize();
const adId = {
ios: 'ios-value-here',
android: 'android-value-here'
}
const platformAdId = isPlatform('android') ? adId.android : adId.ios;
const options: AdOptions = {
adId: platformAdId,
adSize: AdSize.BANNER,
position: AdPosition.BOTTOM_CENTER,
margin: 0,
// isTesting: true
}
AdMob.showBanner(options);
// Subscibe Banner Event Listener
AdMob.addListener('onAdLoaded', (info: boolean) => {
console.log("Banner ad loaded");
});
// Get Banner Size
AdMob.addListener('onAdSize', (info: boolean) => {
console.log(info);
});
return (
<IonApp>
<IonReactRouter>
<IonRouterOutlet>
<Route path="/home" component={Home} exact={true} />
<Route exact path="/" render={() => <Redirect to="/home" />} />
</IonRouterOutlet>
</IonReactRouter>
</IonApp>
);
};
export default App;
Я надеюсь, что это просто потому, что я незнаком с ionic / react, чтобы знать, что на самом деле делает const App: React.FC = () => {
, и есть способ обойтись без этого.
Или это просто случай, когда Плагины сообщества Capacitor работают только с Ioni c?