본문 바로가기
[개발] 이야기/[DotNet] 이야기

xamarin android admob 광고 붙이기 - 삽질여정기 - 2

by 헤이나우
반응형

xamarin android admob 광고 붙이기 - 2일간 삽질의 결과물 (삽질했던 내용도 공유!) - 1

 

xamarin android admob 광고 붙이기 - 2일간 삽질의 결과물 (삽질했던 내용도 공유!) - 1

이번에 자마린을 통해서 xamarin에 admob광고를 붙이는 기능을 알려드리고자 합니다. 우선 결과를 먼저 보여드리겠습니다. 아직 앱이 배포가 안되었기 때문에 테스트 광고라는 글자가 떴씁니다. 이

heyoonow.tistory.com

 

저는 구글링해서 admob을 붙이려고 했는데 처음에는 안나왔습니다.

모가 잘못됐지? 하면서 삽질을 시작했습니다...ㅠㅠ

 

1. Xamarin.GooglePlayServices.Ads 문제..

글을보다보니 Xamarin.GooglePlayServices.Ads, Xamarin.GooglePlayServices.Ads.Lite, Xamarin.Firebase.Ads, Xamarin.Firebase.Ads.Lite, MarcTron.Admob

이 있고 버전도 다양해서 정말 저 패키지를 하나씩 다운받아서 테스트 해보고 혹시 설치 버전때문에 안됐나? 생각이 들어서 120버전 111버전 71버전 등등 설치해가면서 확인해 보았지만 모두다 안되었습니다. ㅠㅠ

github에서 예제까지 거의다 받아가면서 돌려봤는데 안되더라구요.

 

지금 느낀 결론은 패키지 문제는 아니었습니다. 결국 Xamarin.GooglePlayServices.Ads 최신버전을 설치해도 잘 됩니다.

*저같은 삽질 하지마세요..

 

2. MarcTron.Admob

저 nuget은 Marco Troncone라는 사람이 올린건데 꽤나 인기가 많은거 같습니다. 그래서 예제도 따라해보고 별의별짓을 다했지만 안되었습니다. (하지만 이 Library를 사용해도 문제없이 될거 같긴 함 여러 편의적의 util기능이 많이 붙어있던거 같음)

 

3. appid, 광고단위id

이게 하면서 제일 햇갈렸습니다. 

제가 생성한 admob으로 연동해봤지만 광고가 계속 안나와서 왜그럴까 하다 testid가 있다는걸 알았습니다.

우선 이 testid를 알려드리겠습니다.

 

appid : ca-app-pub-3940256099942544~3347511713 

광고id : 테스트 광고 사용 설정  |  Android  |  Google Developers

 

테스트 광고 사용 설정  |  Android  |  Google Developers

테스트 광고 사용 설정 이 가이드에는 광고 통합에서 테스트 광고를 사용하는 방법이 나와 있습니다. 개발 중에는 테스트 광고를 사용하여 광고를 클릭해도 Google 광고주에게 비용이 청구되지

developers.google.com

이걸 사용하시면 되는데 이걸로 테스트 했는데 계속 광고가 안뜨더라구요 

제가 이걸로 계속 테스트하다 잠들때가 되서 이걸로 빌드해놓고 핸드폰을 켜놓고 잤는데 ... 다음날 광고가 보이는겁니다. 그래서 신나서 앱을 종료후 다시 그 앱을 실행해 봤는데 또 광고가 안뜨더라구요.. 네 테스트id는 광고가 무지 늦게 뜨는거 같습니다. 이거 때문에 삽질하시는분 많은거 같습니다. !

 

4. xamarin 빌드 가 안됨

이게 하면서 제일 짜증났습니다. 이게 설정 및 nuget을 지웠다 설치했다 하면 어느순간 빌드는 성공했는데 패키징이 안되어서 에뮬레이터에 배포가 안되었습니다. 이때 팁을 드리자면 솔루션을 정리한번하고 다시 실행하면 되는경우가 종종있습니다. 그래도 안되면 ..네 visual studio를 껐다가 키면 됩니다. 그리고 솔루션 정리후 다시 실행... 안되면 다시 종료 이걸 반복하면 어느순간되더라구요 모 그래도 안되는 컴퓨터 리셋하라는 이야기도 있습니다. (저는 리셋까진 안해봤네요)

 

5. AndroidManifest.xml

여기에 이렇게 있어야 합니다.. 다른건 건들지말고 혹시나해서 빼거나 다른거 넣지 마세요 ㅎㅎ

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.adtest" android:installLocation="auto">
	<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="31" />
	<application android:label="App.Android" android:theme="@style/MainTheme">
		<!-- Google Mobile Ads Activity -->
		<activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"></activity>
		<meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" />
		<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-4619884321108266~5387843842" /><!--<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-4619884321108266~xxxx" />-->
	</application>
	<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
	<uses-permission android:name="android.permission.INTERNET" />
</manifest>

 

5. 결국 성공한건..

정말 2일정도 삽질해서 결국 된 방법은 admob에서 테스트 기기를 등록후에 내 appid와 광고id를 넣으니...잘되었습니다.

기분은 좋았는데 정말 허무하더라구요 ㅠㅠ

반응형

댓글