안드로이드 광고 권한 추가하기
오늘 앱을 Google Play Console에 등록하다가 예상치 못한 에러 메시지를 마주했다. "Play Console의 광고 ID 선언에는 앱에서 광고 ID를 사용한다고 명시되어 있습니다. 활성 아티팩트 중 하나의 매니페스트 파일에 com.google.android.gms.permission.AD_ID 권한이 포함되어 있지 않습니다."라는 메시지였다. 이 문제를 어떻게 해결해야 할지 고민하다가 방법을 찾아보았다.
에러 메시지의 의미
이 에러는 앱에서 광고 ID를 사용한다고 선언했지만, Android 매니페스트 파일에 광고 ID에 접근할 수 있는 권한이 누락되어 있다는 뜻이었다. 즉, 이 권한을 명시적으로 추가해야만 앱이 정상적으로 작동할 수 있는 상태였다.
해결 방법
1. 가장 먼저 해야 할 일은 android/app/src/main/AndroidManifest.xml 파일을 찾는 것이었다. 이 파일은 앱의 여러 설정을 관리하는 중요한 파일이다.
2. 이제 매니페스트 파일에 아래와 같은 코드를 추가해야 했다. 이 권한은 Android 13(API 레벨 33) 이상에서 광고 ID에 접근하기 위해 필수적이다.
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
이 코드를 <manifest> 태그 바로 아래에 추가하면 된다. 결과적으로 내 AndroidManifest.xml 파일은 다음과 같은 형태가 된다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapp">
<!-- 광고 ID 접근 권한 -->
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
<application
android:name=".MyApplication"
android:label="My App"
android:icon="@mipmap/ic_launcher">
<!-- 기타 앱 설정들 -->
</application>
</manifest>
빌드 및 다시 제출
매니페스트 파일을 수정한 후, 앱을 다시 빌드하고 Google Play Console에 제출해야 한다. 이를 통해 오류가 해결될 것이라고 확신했다.
참고 사항
만약 광고 ID를 사용하지 않는 앱이라면, Google Play Console에서 "앱에서 광고 ID를 사용하지 않는다"고 설정할 수도 있다. 하지만 이번 경우처럼 광고 ID를 사용하고 있다면 위의 권한을 추가하는 것이 적절한 방법이다.
이렇게 설정한 후, 에러가 해결되었고 앱이 정상적으로 등록될 수 있었다. 앞으로도 이런 부분을 놓치지 않도록 주의해야 할 것이다.