androidgoogle-playimei

My app violates the Android Advertising ID policy


Google Play Team has rejected my app because:

The advertising identifier must not be connected to personally-identifiable information or associated with any persistent device identifier (for example: SSAID, MAC address, IMEI, etc.) without explicit consent of the user.

For example, we have identified that your app's attribution SDK enables collection of IMEI from devices which have an Android advertising ID without prominent disclosure, which is a violation of our Android Advertising ID policy.

I'm not collecting the IMEI explicitly so the IMEI must be accessed by one of the dependencies of the app.

How I could detect which one is accessing to the IMEI?

Updated: These are my dependencies

    compile "com.android.support:appcompat-v7:$support_version"
    compile "com.android.support:mediarouter-v7:$support_version"      // I'm using icons from here, like ic_media_pause and such
    compile "com.android.support:recyclerview-v7:$support_version"
    compile "com.android.support:design:$support_version"
    compile "com.android.support:support-compat:$support_version"

    compile 'com.android.support:multidex:1.0.2'

    // individual dependencies -- https://stackoverflow.com/a/43407421/1121497
    compile "com.google.android.gms:play-services-maps:$gms_version"
    compile "com.google.android.gms:play-services-analytics:$gms_version"
    compile "com.google.android.gms:play-services-gcm:$gms_version"
    compile "com.google.firebase:firebase-appindexing:$gms_version"
    compile "com.google.firebase:firebase-core:$gms_version"

    compile "com.facebook.android:facebook-android-sdk:$facebook_version"
    compile 'com.facebook.android:notifications:1.0.2'

    compile 'com.batch.android:batch-sdk:1.11.0'

    compile 'commons-codec:commons-codec:1.9'
    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'
    compile 'com.github.chrisbanes.photoview:library:1.2.2'
    compile 'de.greenrobot:eventbus:2.4.0'
    compile 'info.hoang8f:android-segmented:1.0.5'
    compile 'io.card:android-sdk:5.4.2'
    compile 'me.dm7.barcodescanner:zxing:1.9'
    compile 'com.google.android.exoplayer:exoplayer:r2.2.0'
    compile 'com.squareup.retrofit:retrofit:1.9.0'
    compile 'com.squareup.okhttp:okhttp:2.2.0'

    compile 'io.reactivex:rxandroid:1.1.0'
    compile 'io.reactivex:rxjava:1.1.0'
    //compile 'io.reactivex:rxjava-joins:0.22.0' // to use JoinObservable (and-then-when combinator)

    compile "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

    // In libs we have:
    // - ZooZ 1.02 : From https://github.com/Zooz/Zooz-Android/releases/tag/1.02
    // - AppsFlyer : AF-Android-SDK 2.3.1.13 jar
    // - Volley
    compile fileTree(dir: '../libs', include: '*.jar')

    compile('com.crashlytics.sdk.android:crashlytics:2.7.1@aar') {
        transitive = true
    }

Note: AppsFlyer has been configured as:

        AppsFlyerLib.setCollectIMEI(false); // https://play.google.com/about/monetization-ads/ads/ad-id/
        AppsFlyerLib.setCollectMACAddress(false);
        AppsFlyerLib.setCollectAndroidID(false);

Solution

  • You are using Appsflyer below sdk 4.3. This is the problem. This is the email they sent all developers.

    Hi there,

    The AppsFlyer and Google Play teams are collaborating to ensure that all advertisers using the AppsFlyer SDK are compliant with the Google Play privacy policy. To avoid any disruption to your business, we strongly encourage that all advertisers take the following steps.

    If you are running the AppsFlyer SDK version 4.3 or earlier: Please update to the latest AppsFlyer SDK as soon as possible to maintain full compliance. If you have enabled IMEI collection in a newer SDK version: Disable IMEI collection via the AppsFlyer SDK by removing the following code AppsFlyerLib.getInstance().setImeiData("IMEI_DATA_HERE") If your apps are not yet compliant with the Google Play privacy policy, we recommend that you correct your data collection in a timely manner. For more information about the AppsFlyer SDK, please visit the Help Center or contact your success manager.

    Thank you, The AppsFlyer Team