AdMob2014. 8. 14. 19:16

세로모드에서 사라지는 광고

세로모드에서 사라지는 구글 광고

세로모드에서 사라지는 구글 애드몹

세로모드에서 사라지는 구글 AddMob

세로모드에서 사라지는 Google AddMob

portrait에서 사라지는 Google AddMob

AdMob disappear in  portrait mode

AdMob disappear in  portrait orientation

Google AdMob disappear in portrait orientation



애드몹을 어플리케이션에 띄우려고 약 2일 보냈습니다. 이렇게 저렇게 해도 애드몹(AdMob)이 나오지 않더군요. 처음 시작할 때 아래 구글 애드몹 개발자 사이트(Google Developers)에 있는 코드를 따라 쳤는데 광고는 보이지 않았습니다. 


https://developers.google.com/mobile-ads-sdk/docs

https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals



인터넷 사이트와 블로그를 뒤져보아도 거의 모두가 위와 같습니다. 간단하게 위와 같이 하면 애드몹이 뜬다고만 나옵니다. 2일간 같은 일을 조금씩 다르게 여러 가지로 반복했습니다. 결과가 약간 달라졌습니다. 광고가 가로모드에서만 뜨더군요.

구글 플레이 서비스(Google Play service)에 있는 샘플 프로젝트 GoogleAdsSampleActivity를 들여다 보아도 광고가 세로모드에서 작동하지 않았습니다.



이클립스가 생성한 activity_tst.xml 부분은 이렇습니다.

  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/mainLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#000000" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="hyun.esim.esimlight.ESImLightActivity" >

위 코드는 이클립스에서 만들어주는 가장 간단한 안드로이드 프로젝트입니다. 아무것도 추가 하지 않은 액티비트(Activity) 하나만 가지는 것입니다. 이것이 눈으로는 차이가 없어 보이나 제거해도 큰 차이가 없는 줄(Line)이 있었습니다.



패딩(padding)에 관련한 부분을 지원주면 광고가 이상없이 작동합니다.


    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"




영문 구글링을 하면서 발견한 문구가 해결책이었습니다. 

AdMob AdView only appearing in landscape orientation

you should check if the parent container is padded


구글 광고를 자작 앱에 올리려고 2일 간 이것 저것 건드리면서 몇 가지를 수확한 가치있는 시간이었습니다.

 가로모드에서 뜨는 애드몹| 가로모드에서만 보이는 광고| Landscape에서 보이는 광고| Landscape에서 보이는 애드몹

Landscape에서 보이는 AddMob| AddMob shows up in Landscape orientation |AddMob shows up in Landscape mode

Posted by 코드버무려
AdMob2014. 8. 13. 12:57


안드로이드 매너패스트(AndroidManifest.xml) 요소 내에  meta-data 태그를 추가


    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        
<!-- AdMob -->
        <meta-data android:name="com.google.android.gms.version"
               android:value="@integer/google_play_services_version"/>
        
        <activity



AndroidManifest.xml에 com.google.android.gms.ads.AdActivity를 선언


<action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- AdMob --> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> </application>




AndroidManifest.xml에 권한을 선언

INTERNET ; 필수. 인터넷에 액세스하여 광고를 요청하는 데 사용됩니다.

ACCESS_NETWORK_STATE ; 선택사항. 광고를 요청하기 전에 인터넷 연결을 사용할 수 있는지 확인하는 데 사용됩니다.


</application> <!-- AdMob --> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> </manifest>



이것으로 프로젝트를 매끄럽게 빌드할 수 있습니다.

애드몹 AddMob이 이클립스 프로젝트에 오류없이 통합 완료되었습니다.

광고 배너를 코드에 추가하지 않아 앱을 실행하였을 때 겉으로 보이는 차이점은 없어요.

다음에서 원하는 액티비티에  AdMob 광고 단위를 붙여 화면에 쫙 뜨도록 해보겠습니다.





Posted by 코드버무려
AdMob2014. 8. 13. 12:53


 AdMob을 안드로이드 앱에 달기

구글 애드몹 앱에 설치

어플리케이션에 구글 애드몹 달기

앱에 애드몹 달기

이클립스에 애드몹 설정



안드로이드 어플리케이션(Application)에 애드몹(AdMob)를 사용하려면 SDK를 업그레이드해 Google Play 서비스(Google Play Services)를 사용해야합니다. 기존에 시용하던 애드몹 SDK v6.4.1과 그 이전 버전으로는 2014년 8월 31일 일요일 부터는 사용할 수 없습니다. 구글 플레이 (Google Play)와 합쳐져 새롭게 출시된 구글 애드몹 사용법을 알아보겠습니다.



  • google-play-services_lib를 이클립스에 import하면 Package Explorer에 프로젝트로 등록.
    1. File > Import... > Android 폴더 > Existing Android Code Into workspace >Browerse...
  • 이클립스와 안드로이드 SDK를 설치한 폴더에서 google-play-services_lib를 선택하고 Copy projects into workspace체크하고 확인.
    1. adt-bundle-windows-x86-20140702\sdk\extras\google\google_play_services\libproject



  • File > New > Android Application Prooject > 에서 프로젝트를 만듭니다. 여기서는 TstAdMob!
  • Package Explorer에서 TstAdMob 프로젝트를 우클릭 > Properties > Android > 오른쪽 아래 Add 버튼 > 위에서 추가한 google-play-services_lib를 선택해 추가함.


이것으로 프로젝트 외부 설정은 모두 끝났습니다.

다음 부터는 AdMob을 앱에 달기위한 java와 xml를 수정하는 내용입니다.


Posted by 코드버무려