Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

My app violates the Android Advertising ID policy [duplicate]

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);
like image 936
ilopezluna Avatar asked May 10 '18 07:05

ilopezluna


People also ask

What will happen if I reset advertising ID?

You can't remove or disable the advertising ID entirely. The best that you can do is to “reset” the ID. This wipes the slate clean, and if you do it regularly, you won't build up a big log of information. You can also opt out of personalized ads.

How do I reset advertising ID?

To reset your Android advertising ID, Open Google Settings on your Android device by tapping on menu and then on Google Settings once all apps are displayed on the screen. Locate and tap on the Ads menu under Services. Tap on “reset advertising ID” on the new page.

Does your app use an advertising ID?

YES. Admobs uses Advertising ID.

What does advertising ID permission mean?

It enables users to reset their identifier or opt-out of personalized ads (formerly known as interest-based ads) within Google Play apps.


3 Answers

My application is also removed by Google. I have done the following method to republish it.

  1. Create a privacy policy of application using Free Privacy Policy URL

  2. Publish the privacy policy at URL

  3. Copy the published privacy policy link and add it in Developer Play Console.
  4. Add the privacy policy link in Application also (Optional)

Hope this will help you also.

like image 120
Tayyab Amin Avatar answered Oct 10 '22 23:10

Tayyab Amin


Crashlytics uses a variety of identifiers to provide their services including the Android ID, and the Android Advertising ID.

So crashlytics lib can be an issue. This lib is dealing with advertising ID. Many of developer getting this warning who are using crashlytics lib and not using AppsFlyerLib. So I think you should also be concern about crashlytics library.

For more clarification you can visit crashlytics security page

like image 42
Mafujul Avatar answered Oct 10 '22 23:10

Mafujul


You have to add privacy policy on your application.

First, you have to create a privacy policy URL and then add this URL in GOOGLE PUBLISHER CONSOLE based on application. You can easily create privacy policy using this website.

Privacy Policies

If you have a server/host try to upload privacy policy page on your own server otherwise you can use this website for storing.

Mentioned: you have to add this policy page on your application. Create a menu as privacy police and show all your policy content on a dialog. Easiest way

like image 5
Md.Tarikul Islam Avatar answered Oct 10 '22 21:10

Md.Tarikul Islam