반응형
펌 : http://android.elex.pe.kr/dev-guide/admob
애드몹 붙이는 방법
1. 프로젝트에 GoogleAdMobAdsSdk-4.3.1.jar 파일을 추가한다. (라이브러리 파일은 현재 페이지 맨 아래에 링크된 주소를 따라간다.)
Properties > Java Build Path > Libraries > Add External JARs
2. 메니페스트 파일에 다음과 같이 액티비티를 추가한다. 최신 버전의 라이브러리는 targetSDK를 13 이상으로 설정해야 한다.
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
3. 메니페스트 파일에 다음과 같이 퍼미션을 추가한다.
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
4. 다음을 참조하여 레이아웃을 꾸민다. (유닛 아이디는 자신의 광고 아이디로 변경해야 한다.)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.google.ads.AdView android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adUnitId="MY_AD_UNIT_ID"
ads:adSize="BANNER"
ads:testDevices="TEST_EMULATOR,e78b974e6ab65648b52951e69edcb571"
ads:loadAdOnCreate="true"/>
</LinearLayout>
5. 액티비티의 onCreate()에서 다음과 같이 호출한다.
AdView adView = (AdView)this.findViewById(R.id.adView);
adView.loadAd(new AdRequest());
또는
4. 액티비티에 AdView를 private으로 선언하고, 생성한 후 레이아웃에 뷰를 추가한다. (유닛 아이디는 자신의 광고 아이디로 변경해야 한다.)
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Create the adView
adView = new AdView(this, AdSize.BANNER, MY_AD_UNIT_ID);
// Lookup your LinearLayout assuming it’s been given
// the attribute android:id="@+id/mainLayout"
LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout);
// Add the adView to it
layout.addView(adView);
// Initiate a generic request to load it with an ad
adView.loadAd(new AdRequest());
}
@Override
public void onDestroy() {
adView.destroy();
super.onDestroy();
}
※ 배너 크기 : 화면 크기가 작으면 광고가 안보이므로 주의할 것.
Size (WxH) | Description | Availability | AdSize Constant |
---|---|---|---|
320x50 | Standard banner | Phones and Tablets | BANNER |
300x250 | IAB Medium Rectangle | Tablets | IAB_MRECT |
468x60 | IAB Full-Size Banner | Tablets | IAB_BANNER |
728x90 | IAB Leaderboard | Tablets | IAB_LEADERBOARD |
※ 새로운 광고를 받아 오는 주기는 애드옵 계정에서 설정할 수 있으며 프로그램 내에서 처리하려면 새로운 AdRequest를 생성하고 loadAd()하면 된다.
※ AdRequest 객체는 테스트용 장치를 추가하거나 (테스트 장치는 테스트하려는 장치의 ID를 입력하여야 함.)
AdRequest request = new AdRequest();
request.addTestDevice(AdRequest.TEST_EMULATOR);
request.addTestDevice("E83D20734F72FB3108F104ABC0FFC738");
광고 대상을 특정하는데 사용될 수 있다.
AdRequest request = new AdRequest();
request.setGender(AdRequest.Gender.FEMALE);
request.setLocation(location);
request.setBirthday("19850101");
※ AdListener 인터페이스를 구현하면 각각의 상태에 따른 처리를 할 수 있다.
public interface AdListener {
public void onReceiveAd(Ad ad);
public void onFailedToReceiveAd(Ad ad, AdRequest.ErrorCode error);
public void onPresentScreen(Ad ad);
public void onDismissScreen(Ad ad);
public void onLeaveApplication(Ad ad);
}
반응형