Google Play Services Analytics 库实施导致 Play 管理中心广告警告
Google Play Services Analytics library implementation causing Play Console ads warning
我一直在 Google Play 的广告应用内容中收到一条警告,说“我们在您的应用中发现了广告 SDK”。在发布了许多试图解决该问题的版本后,我发现原因是我的应用程序级构建 Gradle 文件中的这些行:
implementation ('com.google.android.gms:play-services-analytics-impl:18.0.1') {
exclude module: "play-services-ads"
exclude module: "play-services-ads-identifier"
exclude module: "play-services-measurement"
exclude module: "play-services-measurement-sdk"
}
有什么我可能遗漏要排除的吗?
I 运行 'gradlew -q dependencies app:dependencies command' 这些是库的 t运行sitive 依赖项:
+--- com.google.android.gms:play-services-analytics-impl:18.0.1
| +--- com.google.android.gms:play-services-base:18.0.1
| | +--- androidx.collection:collection:1.0.0
| | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | +--- androidx.core:core:1.2.0
| | | +--- androidx.annotation:annotation:1.1.0
| | | +--- androidx.lifecycle:lifecycle-runtime:2.0.0
| | | | +--- androidx.lifecycle:lifecycle-common:2.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.arch.core:core-common:2.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | \--- androidx.versionedparcelable:versionedparcelable:1.1.0
| | | +--- androidx.annotation:annotation:1.1.0
| | | \--- androidx.collection:collection:1.0.0 (*)
| | +--- androidx.fragment:fragment:1.0.0
| | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | +--- androidx.legacy:legacy-support-core-ui:1.0.0
| | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | +--- androidx.legacy:legacy-support-core-utils:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | +--- androidx.documentfile:documentfile:1.0.0
| | | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.loader:loader:1.0.0
| | | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | | +--- androidx.lifecycle:lifecycle-livedata:2.0.0
| | | | | | | +--- androidx.arch.core:core-runtime:2.0.0
| | | | | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | | | | \--- androidx.arch.core:core-common:2.0.0 (*)
| | | | | | | +--- androidx.lifecycle:lifecycle-livedata-core:2.0.0
| | | | | | | | +--- androidx.lifecycle:lifecycle-common:2.0.0 (*)
| | | | | | | | +--- androidx.arch.core:core-common:2.0.0 (*)
| | | | | | | | \--- androidx.arch.core:core-runtime:2.0.0 (*)
| | | | | | | \--- androidx.arch.core:core-common:2.0.0 (*)
| | | | | | \--- androidx.lifecycle:lifecycle-viewmodel:2.0.0
| | | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.localbroadcastmanager:localbroadcastmanager:1.0.0
| | | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | \--- androidx.print:print:1.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.customview:customview:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | \--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | +--- androidx.viewpager:viewpager:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.drawerlayout:drawerlayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.interpolator:interpolator:1.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.interpolator:interpolator:1.0.0 (*)
| | | | +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | \--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | \--- androidx.cursoradapter:cursoradapter:1.0.0
| | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
| | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | +--- androidx.loader:loader:1.0.0 (*)
| | | \--- androidx.lifecycle:lifecycle-viewmodel:2.0.0 (*)
| | +--- com.google.android.gms:play-services-basement:18.0.0
| | | +--- androidx.collection:collection:1.0.0 (*)
| | | +--- androidx.core:core:1.2.0 (*)
| | | \--- androidx.fragment:fragment:1.0.0 (*)
| | \--- com.google.android.gms:play-services-tasks:18.0.1
| | \--- com.google.android.gms:play-services-basement:18.0.0 (*)
| +--- com.google.android.gms:play-services-basement:18.0.0 (*)
| \--- com.google.android.gms:play-services-stats:17.0.3
| +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
| \--- com.google.android.gms:play-services-basement:18.0.0 (*)
如果您的应用没有使用广告,请不要担心,在这种情况下,这是误报,Google 知道并告诉您保持原样(见下图)
我发现大多数分析 SDK 都使用 (IDFA) 来有效地识别唯一身份用户。
我一直在 Google Play 的广告应用内容中收到一条警告,说“我们在您的应用中发现了广告 SDK”。在发布了许多试图解决该问题的版本后,我发现原因是我的应用程序级构建 Gradle 文件中的这些行:
implementation ('com.google.android.gms:play-services-analytics-impl:18.0.1') {
exclude module: "play-services-ads"
exclude module: "play-services-ads-identifier"
exclude module: "play-services-measurement"
exclude module: "play-services-measurement-sdk"
}
有什么我可能遗漏要排除的吗?
I 运行 'gradlew -q dependencies app:dependencies command' 这些是库的 t运行sitive 依赖项:
+--- com.google.android.gms:play-services-analytics-impl:18.0.1
| +--- com.google.android.gms:play-services-base:18.0.1
| | +--- androidx.collection:collection:1.0.0
| | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | +--- androidx.core:core:1.2.0
| | | +--- androidx.annotation:annotation:1.1.0
| | | +--- androidx.lifecycle:lifecycle-runtime:2.0.0
| | | | +--- androidx.lifecycle:lifecycle-common:2.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.arch.core:core-common:2.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | \--- androidx.versionedparcelable:versionedparcelable:1.1.0
| | | +--- androidx.annotation:annotation:1.1.0
| | | \--- androidx.collection:collection:1.0.0 (*)
| | +--- androidx.fragment:fragment:1.0.0
| | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | +--- androidx.legacy:legacy-support-core-ui:1.0.0
| | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | +--- androidx.legacy:legacy-support-core-utils:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | +--- androidx.documentfile:documentfile:1.0.0
| | | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.loader:loader:1.0.0
| | | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | | +--- androidx.lifecycle:lifecycle-livedata:2.0.0
| | | | | | | +--- androidx.arch.core:core-runtime:2.0.0
| | | | | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | | | | \--- androidx.arch.core:core-common:2.0.0 (*)
| | | | | | | +--- androidx.lifecycle:lifecycle-livedata-core:2.0.0
| | | | | | | | +--- androidx.lifecycle:lifecycle-common:2.0.0 (*)
| | | | | | | | +--- androidx.arch.core:core-common:2.0.0 (*)
| | | | | | | | \--- androidx.arch.core:core-runtime:2.0.0 (*)
| | | | | | | \--- androidx.arch.core:core-common:2.0.0 (*)
| | | | | | \--- androidx.lifecycle:lifecycle-viewmodel:2.0.0
| | | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.localbroadcastmanager:localbroadcastmanager:1.0.0
| | | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | \--- androidx.print:print:1.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.customview:customview:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | \--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | +--- androidx.viewpager:viewpager:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.coordinatorlayout:coordinatorlayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.drawerlayout:drawerlayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.slidingpanelayout:slidingpanelayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.customview:customview:1.0.0 (*)
| | | | +--- androidx.interpolator:interpolator:1.0.0
| | | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | +--- androidx.swiperefreshlayout:swiperefreshlayout:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | +--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | | \--- androidx.interpolator:interpolator:1.0.0 (*)
| | | | +--- androidx.asynclayoutinflater:asynclayoutinflater:1.0.0
| | | | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | | | \--- androidx.core:core:1.0.0 -> 1.2.0 (*)
| | | | \--- androidx.cursoradapter:cursoradapter:1.0.0
| | | | \--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
| | | +--- androidx.annotation:annotation:1.0.0 -> 1.1.0
| | | +--- androidx.loader:loader:1.0.0 (*)
| | | \--- androidx.lifecycle:lifecycle-viewmodel:2.0.0 (*)
| | +--- com.google.android.gms:play-services-basement:18.0.0
| | | +--- androidx.collection:collection:1.0.0 (*)
| | | +--- androidx.core:core:1.2.0 (*)
| | | \--- androidx.fragment:fragment:1.0.0 (*)
| | \--- com.google.android.gms:play-services-tasks:18.0.1
| | \--- com.google.android.gms:play-services-basement:18.0.0 (*)
| +--- com.google.android.gms:play-services-basement:18.0.0 (*)
| \--- com.google.android.gms:play-services-stats:17.0.3
| +--- androidx.legacy:legacy-support-core-utils:1.0.0 (*)
| \--- com.google.android.gms:play-services-basement:18.0.0 (*)
如果您的应用没有使用广告,请不要担心,在这种情况下,这是误报,Google 知道并告诉您保持原样(见下图)
我发现大多数分析 SDK 都使用 (IDFA) 来有效地识别唯一身份用户。