Flutter AdMob 사용자를 위한 Adrop adapter 연결 가이드
사전 준비 사항
1. Adrop 설정 파일 추가하기
2. 앱에 Adrop 플러그인을 추가
3. 앱에서 Adrop 초기화(Initialize)하기
4. 적용하기
Last updated
Last updated
flutter pub add adrop_ads_flutter
flutter pub add adrop_ads_admob
cd ios
pod install --repo-updateimport 'package:adrop_ads_admob/adrop_ads_admob.dart';
void main() {
WidgetsFlutterBinding.ensureInitialized();
unawaited(MobileAds.instance.initialize());
runApp(const MyApp());
Adrop.initialize(false);
}import 'dart:async';
import 'dart:io';
import 'package:adrop_ads_admob/adrop_ads_admob.dart';
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
final adUnitId =
Platform.isAndroid ? 'YOUR ADMOB UNIT ID or YOUR ADMOB TEST UNIT ID' : 'ca-app-pub-3141837772329875/5227710010';
InitializationStatus? status;
BannerAd? _bannerAd;
bool _isLoaded = false;
@override
void initState() {
super.initState();
initAdmob();
}
Future<void> initAdmob() async {
if (Platform.isIOS) {
MobileAds.instance
.updateRequestConfiguration(RequestConfiguration(testDeviceIds: ["bfd8f1928d23842fc203132fe75de135"]));
}
}
void loadAd() {
_bannerAd = BannerAd(
adUnitId: adUnitId,
request: const AdRequest(),
size: AdSize.largeBanner,
listener: BannerAdListener(
onAdLoaded: (ad) {
debugPrint('$ad loaded.');
setState(() {
_isLoaded = true;
});
},
onAdFailedToLoad: (ad, err) {
setState(() {
_isLoaded = false;
});
debugPrint('BannerAd failed to load: $err');
ad.dispose();
},
),
);
MobileAds.instance.initialize().then((value) {
_bannerAd?.load();
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Center(child: Text('Adrop for Admob mediation')),
),
body: Center(
child: Column(
children: [
TextButton(onPressed: loadAd, child: const Text("Load Ad")),
const SizedBox(height: 32),
if (_isLoaded && _bannerAd != null)
Align(
alignment: Alignment.bottomCenter,
child: SafeArea(
child: SizedBox(
width: _bannerAd!.size.width.toDouble(),
height: _bannerAd!.size.height.toDouble(),
child: AdWidget(ad: _bannerAd!),
),
),
),
],
),
),
),
);
}
}flutter run