일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 주택가 잠실새내
- 막내의막무가내 rxjava
- 안드로이드 Sunflower 스터디
- 막내의막무가내 SQL
- 2022년 6월 일상
- 막내의막무가내 목표 및 회고
- 프래그먼트
- 막내의막무가내 플러터 flutter
- 막무가내
- 안드로이드 sunflower
- 프로그래머스 알고리즘
- 막내의막무가내 안드로이드 코틀린
- Fragment
- 막내의막무가내 안드로이드 에러 해결
- 막내의막무가내 플러터
- 막내의막무가내 코틀린 안드로이드
- flutter network call
- 막내의막무가내 알고리즘
- 주엽역 생활맥주
- 막내의막무가내 안드로이드
- 부스트코스
- 막내의 막무가내
- 막내의막무가내 코볼 COBOL
- 막내의막무가내
- 막내의막무가내 프로그래밍
- 안드로이드
- 막내의 막무가내 알고리즘
- 막내의막무가내 코틀린
- 막내의막무가내 일상
- 부스트코스에이스
- Today
- Total
막내의 막무가내 프로그래밍 & 일상
[안드로이드] 안드로이드 모바일 페이스북 광고 구현 총정리!! 본문
[서론]
보통 블로그나 모바일 앱 광고에서 가장 많이 쓰이는 광고 플랫폼은 구글의 에드센스(웹), 애드몹(모바일)입니다.
다른플랫폼에 비해 광고 질도 좋고 수익도 훨씬 많이 줍니다. 전 무효클릭으로 인해 구글에게 정지 당했고 한번 당한 정지는 어떻게 우회를 해도 구글이 알아내서 죽을때가지 재가입할 수 없습니다. (슬픈 사연이.. ㅠㅠ 정지당했을시 2주동안 너무 슬펐습니다) 지금이면 하루 커피값은 충분히 벌었을 것 같습니다 ㅇㅅㅇ
쓸데없는 서론이 길었는데, 이번 포스팅에서는 모바일앱에 페이스북 광고를 구현해보려고 합니다. 안드로이드 페이스북 광고 구현이 작성된 포스팅도 거의 없는수준이라 공유목적에도 좋고 다른 광고플랫폼에 좀 복잡해 보여서 하나하나 기록해두면 좋을 것 같습니다.
[구현]
구현에 실패할수도 있지만 일단 차근차근 작성해보겠습니다.
play.google.com/store/apps/details?id=com.mtjin.lol_spellchecker
옛날 안드로이드 개발 처음시작했을때 자바로 만든 롤 스펠체크라는 앱에 달아보려고합니다. (이 앱에는 현재 카울리라는 모바일 광고가 달려있습니다)
먼저 페이스북 광고를 달기위해 위 사이트에 들어가서 회원가입을 합니다.
수익화 시작하기를 눌러줍니다.
그럼 밑에 창이 뜹니다.
자산 만들기 클릭
자산 이름 만들기
전 안드로이드 광고니깐 안드로이드 추가 클릭
앱 상세정보 입력
결제설정을 해야하는데
본인만의 고유번호 예를들어 주민등록번호를 입력하세요 !! ㅋㅋ (벌써부터 타 광고플랫폼에 비해 막히는게 생기네요 ㅎㅎ)
참고: 미국 및 유럽 연합(EU) 외 지역의 경우 납세자 번호(기타)를 선택해야 합니다. 운전면허증 번호, 사업자 번호, 주민등록번호 등 개인 또는 회사를 확인할 수 있는 번호를 사용할 수 있습니다.
다음을 누르면
또SWIFT 번호라는 처음보는 단어가 등장합니다.
이건 다음 사이트에서 찾아볼 수 있었습니다. 은행 고유번호를 의미합니다.
m.blog.naver.com/ze_zeh/221880846144
은행 연결을 한 후 마지막으로 Confirm을 해주고 세팅하면 됩니다.
다음단계는 검수입니다.
72시간 내에 검수해준다고 하네요. 네... 그렇습니다.
광고 설정 단계입니다. 여러가지 광고가 있네요.
저는 저 다섯가지중 삽입광고를 해보려고합니다 !!
SDK통합 단계입니다.
토큰이랑 ID 값을 받는데 이걸로 이제 광고 코드를 구현하면 되나봅니다.
이제 코드로 구현을 해야합니다. 밑 공식문서를 참고합니다. !
[기본사항]
developers.facebook.com/docs/audience-network/get-started/android
[삽입광고]
developers.facebook.com/docs/audience-network/guides/ad-formats/interstitial/android
1. 가장 먼저 디펜던시 추가해줍니다.
dependencies {
compile 'com.facebook.android:audience-network-sdk:6.+'
}
2. Application 클래스 생성 및 세팅
// Initialize the Audience Network SDK
AudienceNetworkAds.initialize(this)
추가로 동영상 광고를 위해 manifest에서 hardwareAccelerated 도 true로 해줍니다.
2. 광고를 삽입할 액티비티의 OnCreate() 에 다음코드를 추가해줍니다.
//페이스북광고 초기화
InterstitialAd interstitialAd = new InterstitialAd(this, "YOUR_PLACEMENT_ID");
이때 PLACEMENT_ID는 아래와 같이 내가만든 삽입광고 설정에 들어가서 빨간색 부분을 누르면 나옵니다.
3. 이어서 광고를 구현해줍니다. 다양한 콜백이 존재합니다.
// Create listeners for the Interstitial Ad
InterstitialAdListener interstitialAdListener = new InterstitialAdListener() {
@Override
public void onInterstitialDisplayed(Ad ad) {
// Interstitial ad displayed callback
Log.e(TAG, "Interstitial ad displayed.");
}
@Override
public void onInterstitialDismissed(Ad ad) {
// Interstitial dismissed callback
Log.e(TAG, "Interstitial ad dismissed.");
}
@Override
public void onError(Ad ad, AdError adError) {
// Ad error callback
Log.e(TAG, "Interstitial ad failed to load: " + adError.getErrorMessage());
}
@Override
public void onAdLoaded(Ad ad) {
// Interstitial ad is loaded and ready to be displayed
Log.d(TAG, "Interstitial ad is loaded and ready to be displayed!");
// Show the ad
interstitialAd.show();
}
@Override
public void onAdClicked(Ad ad) {
// Ad clicked callback
Log.d(TAG, "Interstitial ad clicked!");
}
@Override
public void onLoggingImpression(Ad ad) {
// Ad impression logged callback
Log.d(TAG, "Interstitial ad impression logged!");
}
};
// For auto play video ads, it's recommended to load the ad
// at least 30 seconds before it is shown
interstitialAd.loadAd(
interstitialAd.buildLoadAdConfig()
.withAdListener(interstitialAdListener)
.build());
4. 마지막으로 onDestory() 에서 광고를 헤제해줍니다.
@Override
protected void onDestroy() {
if (interstitialAd != null) {
interstitialAd.destroy();
}
super.onDestroy();
}
이상 끝!
댓글과 공감은 큰 힘이 됩니다. 감사합니다. !!
'안드로이드 > 코틀린 & 아키텍처 & Recent' 카테고리의 다른 글
[안드로이드] startActivityForResult() onActivityResult() deprecated 해결 방법 !! (갤러리에서 사진불러오기로 예시 2021) (4) | 2021.03.23 |
---|---|
[안드로이드] HostnameVerifier 인터페이스 구글 앱 업로드 거부 (해결 예정) (6) | 2021.03.12 |
[안드로이드] Notification(노티피케이션) 정리 및 예제 (4) | 2021.02.14 |
[코틀린] 코루틴(coroutine) 학습 정리 (0) | 2021.02.13 |
[안드로이드] 클린 아키텍처(Clean Architecture) 정리 및 구현 (43) | 2021.01.28 |