Today's

길을 나서지 않으면 그 길에서 만날 수 있는 사람을 만날 수 없다

모바일 앱(안드로이드)

안드로이드 앱 만들기 : 광고 ID 구현은 어떻게 ?

Billcorea 2022. 9. 15. 21:12
반응형

구글에서는 이제 android 13을 대상으로 앱을 게시하기 위해서는 광고 ID을 선언해야 한다고 합니다.  물론 이전부터(2022.4.1 이후) 적용되기 시작했던 부분이나, 9월이 된 이제 서야 준비를 해 봅니다. 그동안은 API 버전이 32 이하인 경우에만 적용되는 앱을 배포하여 왔기 때문에 문제가 되지 않았으나, 이제 API 33 이상 버전으로 옮겨 가기 위해서는 준비를 해야 할 때가 되었다고 볼 수 있습니다. 

 

이번에 패치를 하는 앱이 있어서 시도를 해 보았습니다. 그래서 일단 앱은 정상적으로 패치가 적용 되어 게시되었습니다. 아직 어떤 의미가 있는지는 알 수 없으나, playstore의 게시에서 퇴짜(?)를 받지 않았으니 정리를 해 두고자 합니다. 

 

먼저 manifest 파일에 다음 한 줄을 추가 했습니다. 

<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>

다음은 gradle 파일에 추가 합니다. 

implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
implementation 'com.google.android.gms:play-services-appset:16.0.2'

다음은 체크 루틴을 추가해 두었습니다. 

MainActivity 에 다음과 같이 function을 추가하고, onCreate에서 해당 function을 호출하는 정도... 이걸로 끝?

fun getIdAndLat() {
    var adInfo: AdvertisingIdClient.Info? = null;
    try {
        adInfo = AdvertisingIdClient.getAdvertisingIdInfo(this@MainComposeActivity)
    } catch (e : java.lang.Exception) {

    }
    var GAID = adInfo?.id
    var limitTracking = adInfo?.isLimitAdTrackingEnabled

    var client = AppSet.getClient(this@MainComposeActivity)
    var task = client.appSetIdInfo
    task.addOnSuccessListener { info ->
        var scope = info.scope
        var id = info.id

        Log.e("getIdAndLat=", "${GAID} ${limitTracking} ${scope} ${id}")
    }

    Log.e("getIdAndLat", "----------------- END")
}

코드를 보면 알 수 있듯이 코드에서는 adInfo을 구하여 id을 찾아보는 정도까지만 구현이 되어 있고 그 이외의 것은 아무것도 하지 않고 있습니다.  그래도 아직 까지는 딱히 문제가 발생되었다는 보고를 하고 있지 않습니다. 

 

실행되는 앱의 샘플 이미지는 다음과 같습니다.

광고 테스트 화면

 

다른 내용이 발견되거나, 오류 보고가 발생하게 되면 이 게시글은 수정될 수 있습니다.

 

앱을 게시하게 되면 정책 에서 앱 콘텐츠 을 선택하고 광고ID을 클릭해서 광고ID 사용에 대한 내용을 저장해야 합니다. 

그래야 앱을 게시할 때 정상적으로 게시를 진행할 수 있습니다.

 

 

반응형