📱테스트 환경
"react": "18.2.0"
"react-native": "0.74.2"
광고를 붙여야 돈을 벌 수 있으니 광고를 붙여보려고 한다.
근데 Android 는 좀해봤어도 IOS 개발은 안해봐서 설정에 좀 애먹다보니
해당 설정하는 내용을 기록하려고 한다!
Podfile 에
pod 'Google-Mobile-Ads-SDK'
해당 내용 추가
해당 내용은
target 'ProjectName' do
안에 넣어주면 된다.
그다음 Xcode 에서
File > Add Package Dependencies... 에서
https://github.com/googleads/swift-package-manager-google-mobile-ads.git
추가해주면 끝!
면 좋겠지만 .. 진짜 프로젝트 생성할때마다 에러를 겪어서 해당 방법을 추가한다..
Info.plist 에 해당 값을 추가한다.
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-3940256099942544~1458002511</string>
string 값은 Amdob 에서 광고단위를 만들면 확인할 수 있으니 값은 변경해줘야한다.
안드로이드 같은 경우에는
AndroidManifest.xml 로 가서
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~1458002511"
tools:replace="android:value"
/>
해당 값을 추가해준다.
FATAL EXCEPTION: main
Process: com.phonmacase, PID: 12610
java.lang.RuntimeException: Unable to get provider com.google.android.gms.ads.MobileAdsInitProvider: java.lang.IllegalStateException:
******************************************************************************
* Invalid application ID. Follow instructions here: *
* https://googlemobileadssdk.page.link/admob-android-update-manifest *
* to find your app ID. *
* Google Ad Manager publishers should follow instructions here: *
* https://googlemobileadssdk.page.link/ad-manager-android-update-manifest. *
******************************************************************************
at android.app.ActivityThread.installProvider(ActivityThread.java:8297)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:7807)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7488)
at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2416)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8705)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:886)
Caused by: java.lang.IllegalStateException:
******************************************************************************
* Invalid application ID. Follow instructions here: *
* https://googlemobileadssdk.page.link/admob-android-update-manifest *
* to find your app ID. *
* Google Ad Manager publishers should follow instructions here: *
* https://googlemobileadssdk.page.link/ad-manager-android-update-manifest. *
******************************************************************************
at com.google.android.gms.ads.internal.client.zzek.attachInfo(com.google.android.gms:play-services-ads-lite@@23.3.0:15)
at com.google.android.gms.ads.MobileAdsInitProvider.attachInfo(com.google.android.gms:play-services-ads-lite@@23.3.0:1)
at android.app.ActivityThread.installProvider(ActivityThread.java:8292)
... 11 more
뭐 이런 에러를 처음봤는데 해당 에러가 APPLICATION_ID 값이 잘못되서 그렇다고한다.
가이드대로 설치하고나면 값이
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="${appJSONGoogleMobileAdsAppID}"/>
이런식으로 react-native-google-mobile-ads > AndroidManifest.xml 에 있을텐데
replace 를 통해서 ID 값을 적용시켜준다.
'Javascript > React-Native' 카테고리의 다른 글
[RN] Input 사용하기 (0) | 2024.10.14 |
---|---|
[RN] Alert 사용하는 방법 (0) | 2024.10.14 |
[RN] IOS Simulator Error (1) | 2024.09.09 |
[RN] could not move temporary workspace 에러 (0) | 2024.07.31 |
[RN] 기본 스플래시 화면 비활성화 & 커스텀 스플래시 화면 사용 (2) | 2024.07.23 |