Harsh Vardhan
Harsh Vardhan

Reputation: 650

I don't use ads in my flutter app then why this message is showing in my play console?

I am using Firebase and google analytics though.

The advertising ID declaration form is now available for you to complete.

We'll use this declaration to provide safeguards in Play Console. You will not be able to create releases targeting Android 13 until you complete the declaration.

Apps using advertising ID that target API level 33 (Android 13) or later must declare the normal permission com.google.android.gms.permission.AD_ID in their AndroidManifest.xml. This will prevent your advertising identifier from zeroing out. If you do not declare the permission in your manifest file, or if you use an SDK that omits the permission from their library manifest, this may impact your advertising and analytics use cases.

Upvotes: 35

Views: 32626

Answers (6)

most200
most200

Reputation: 1263

I had the same issue with my Flutter app when I upgraded to target API level 33. I followed the very helpful instructions from cristiano2lopes to check the build logs which verified that even though I was not intentionally using the advertising ID in my code, the Firebase plugins are including it.

I tried the instructions from Leonardo to disable it. I also found a GitHub discussion about this same issue and followed additional instructions from that to disable it. None of the instructions worked. Google Play Console kept showing the same error even after trying to disable it.

I then updated my Google Play disclosure to say that yes, my app does include the advertising ID. I think updating your disclosure is an easier and better solution if your app depends on Firebase. The disclosure options allow you to select that the advertising ID is used for app functionality or analytics while still stating that your app does not actually include advertising.

Saving this answer here for anyone else who comes across this discussion in the future. If your app depends on Firebase, updating your disclosure may be your best choice.

Upvotes: 4

Leonardo Rignanese
Leonardo Rignanese

Reputation: 1214

Firebase Analytics actually uses that permission.

In order to disable that you need to add this in your AndroidManifest.xml file, inside the application tag:

<meta-data android:name="google_analytics_adid_collection_enabled" android:value="false" />

Source: https://firebase.google.com/docs/analytics/configure-data-collection?platform=android#disable_advertising_id_collection

Upvotes: 2

Abdallah Mahmoud
Abdallah Mahmoud

Reputation: 937

remove from dependence if you not need

flutter_facebook_auth: ^4.4.1+1

Upvotes: 2

cristiano2lopes
cristiano2lopes

Reputation: 3498

You need to check if your final merged manifest, AndroidManifest.xml, includes the permission com.google.android.gms.permission.AD_IDor not.

If it does, you need to answer Yes and answer the questions that are prompted; if it does not you should answer No.

You may not be including this permission explicitly in your AndroidManifest.xml, but it could still be present in your final merged manifest after the build is done, contributed by one of the dependencies you have on your project.

To verify this, you can use the Merged Manifest Viewer on Android Studio and look for com.google.android.gms.permission.AD_ID, or check this files on the build folder:

└── APP MODULE
├── intermediates
│   ├── merged_manifest
│      └── flavourBuild
│          └── out
│              └── AndroidManifest.xml
└── outputs
    └── logs
        └── manifest-merger-prod-release-report.txt

Search for com.google.android.gms.permission.AD_ID inside manifest-merger-FLAVOUR-BUILD-report.txt and you will get if it was included, and by what library.

Example

Example - Added by the inclusion of Firebase Config Library a dev of Firebase

Search for com.google.android.gms.permission.AD_ID inside AndroidManifest.xml and you will get to find if it was included or not.

You can remove the permission by including a removal rule on you AndroidManifest, like explained here, but that can cause problems on the functionality of the dependencies that need it.

Upvotes: 45

didikee
didikee

Reputation: 447

It seems that Google play has pushed this policy to all developers, and it will be a must for every application in the future.

If you are not using ads, you can choose NO.

Update

If you haven't encountered the popup selection and got this warning while uploading an app to the store, follow these steps in case you are not using AdID:

Go to App Content -> Advertising Id -> Does your app use advertising ID? -> NO -> Save

Upvotes: 12

jux_97
jux_97

Reputation: 462

I got the same warning while reviewing my last update. I just went to complete the advertising ID declaration (selecting NO - since I don't use any ads in my app) and the warning just disappeared.

NOTE: I am also using Firebase and its analytics in the app.

Upvotes: 3

Related Questions