전면 광고
1 : 준비
프로젝트 설정을 통해 광고 연동을 위한 준비를 한다.
2 : 광고 초기화
안드로이드의 경우 앱 실행 후 main() 에서 바로 초기화를 하는 것을 권장한다.
iOS의 경우 ATT(AppTrackingTransparency) 팝업 표출한 이후 초기화를 하는 것을 권장한다.
ATT(AppTrackingTransparency)는 adpie_sdk example 또는 app_tracking_transparency 를 참고한다.
사이트에서 발급받은 Media ID를
AdPieSdk.initialize()
에 넣어 호출한다.
void main() {
WidgetsFlutterBinding.ensureInitialized();
if (Platform.isAndroid) {
// AdPie SDK 초기화
AdPieSdk.initialize(mediaId);
} else {
initPlugin();
}
runApp(const MyApp());
}
Future<void> initPlugin() async {
final TrackingStatus status =
await AppTrackingTransparency.trackingAuthorizationStatus;
if (status == TrackingStatus.notDetermined) {
final TrackingStatus status =
await AppTrackingTransparency.requestTrackingAuthorization();
}
final uuid = await AppTrackingTransparency.getAdvertisingIdentifier();
print("UUID: $uuid");
// AdPie SDK 초기화
AdPieSdk.initialize(mediaId);
}
3 : 광고 요청과 표출
사이트에서 발급받은 Slot ID를 입력하여 호출한다.
@override
void initState() {
super.initState();
AdPieSdk.setInterstitialListener(InterstitialAdListener(
onAdLoaded: (){
// 광고 수신 성공
bool isLoaded = (await AdPieSdk.isInterstitialLoaded(slotId))!;
if (isLoaded) {
// 광고 표출
AdPieSdk.showInterstitial(slotId);
}
},
onAdFailedToLoad: (int errorCode){
// 광고 수신 실패
},
onAdShown: (){
},
onAdClicked: (){
},
onAdDismissed: (){
})
);
// 광고 요청
AdPieSdk.loadInterstitial(slotId);
}
@override
void dispose() {
super.dispose();
// 광고 해지
AdPieSdk.destroyInterstitial(slotId);
}
Last updated