Play 商店警告:play-services-safetynet (com.google.android.gms:play-services-safetynet) 报告了 17.0.0 版的严重问题

Play Store Warning : play-services-safetynet (com.google.android.gms:play-services-safetynet) has reported critical issues with version 17.0.0

提问人:MANISH 提问时间:7/19/2022 更新时间:7/20/2023 访问量:22261

问:

当我尝试在 Play 商店中更新我的 Flutter 时,我从 Play 商店收到了这个警告。

The developer of play-services-safetynet (com.google.android.gms:play-services-safetynet) has reported critical issues with version 17.0.0. Consider upgrading before publishing a new release.

Here's what the SDK developer told us:
The SafetyNet Attestation API is being discontinued and replaced by the new Play Integrity API. Begin migration as soon as possible to avoid user disruption. The Play Integrity API includes all the integrity signals that SafetyNet Attestation offers and more, like Google Play licensing and better error messaging. Learn more and start migrating at https://developer.android.com/training/safetynet/deprecation-timeline

我没有在我的build.gradle文件中使用safe-net实现,可能是一些第三方pulgin正在使用它,但也尝试了flutter升级以确保更新所有软件包。但我仍然从 Play 商店收到这个严重警告。如果有人有解决方案,请告诉我。提前致谢。

这是我的 pubspec.yaml 实现:

  cupertino_icons: ^1.0.2
  get: ^4.6.1
  path_provider: ^2.0.2+1
  get_storage: ^2.0.3
  file_picker: ^4.5.1
  cached_network_image: ^3.2.1
  shimmer: ^2.0.0
  introduction_screen: ^3.0.2
  json_serializable: ^6.1.4
  flutter_screenutil: ^5.0.0+2
  url_launcher: ^6.0.5
  google_fonts: ^2.3.1
  carousel_slider: ^4.0.0
  fluttertoast: ^8.0.8
  change_app_package_name: ^1.0.0
  font_awesome_flutter: ^10.1.0
  photo_view: ^0.13.0
  new_version: ^0.2.2
  shared_preferences: ^2.0.13
  bottom_bar: ^2.0.0
  intl: ^0.17.0
  http: ^0.13.4
  pull_to_refresh: ^2.0.0
  connectivity_plus: ^2.3.5
  image_picker: ^0.8.5+3
  syncfusion_flutter_pdfviewer: ^20.1.61-beta
  vdocipher_flutter: ^1.0.0-beta.6
  webview_flutter: ^3.0.4
  get_cli: ^1.8.1
  flutter_linkify: ^5.0.2
  flutter_countdown_timer: ^4.1.0
  webview_flutter_plus: ^0.3.0+2
  flutter_downloader: ^1.8.0+1  #integrate for ios also
  android_path_provider: ^0.3.0
  device_info_plus: ^4.0.0
  permission_handler: ^10.0.0
  open_file: ^3.2.1
  package_info_plus: ^1.4.2

参考图片 :enter image description here

Android Google-Play 警告 Flutter-3.0

评论

1赞 Tyler V 7/19/2022
我也见过这个,但它似乎与 firebase 捆绑在一起,也许还有其他一些 Google 库,所以如果你从那里得到它,你真的无能为力......我认为忽略是安全的。
1赞 Carlos Peñaranda 7/20/2022
有人说,上传新版本后,因此被拒绝
0赞 kragekjaer 7/21/2022
即使有此警告,它仍会发布吗?审核时间过长?
0赞 MANISH 7/21/2022
是的,您可以发布并且没有审核时间太长

答:

20赞 Quyen Anh Nguyen 7/20/2022 #1

com.google.gms:google-services本身已包含 safetyNet API。正如您在最新的 4.3.13 的 gg 服务版本中看到的那样,它有 safetyNet 版本 18.0,没关系。

https://developers.google.com/android/guides/setup#list-dependencies 如何禁止显示“避免使用捆绑版的Google Play服务SDK”警告? https://developers.google.com/android/guides/releases

更新: 13/10/2022

谢谢!

评论

2赞 Tobechukwu Ezenachukwu 8/5/2022
developers.google.com/android/guides/releases 年开始,截至今天最新的是 4.3.13,而不是 4.4.13。
0赞 Quyen Anh Nguyen 8/5/2022
我的打字错误,谢谢。
9赞 Doing Things Occasionally 8/5/2022
我试过这个,但它不起作用
0赞 Slick Slime 9/6/2022
同样尝试过,但 Play 商店仍然显示新版本的警告。
0赞 LM_IT 9/15/2022
根据这个答案,假设我们可以忽略警告并等待 G 用他们自己的库修复它是否正确?
7赞 Tommy 8/30/2022 #2

Firebase Auth 库的 Google Play 也存在同样的问题。不幸的是,它没有选项更新到更新了Safetynet模块的版本。所以必须找到一种可行的方法将该模块从我的项目中排除。

这是我所拥有的:

dependencies {
    implementation platform('com.google.firebase:firebase-bom:30.3.2')
    implementation 'com.google.firebase:firebase-auth'
}

对于我的项目,最好的选择是从所有库中排除 safetynet 模块。不管出于什么原因,单个库排除都不起作用。

dependencies {
    implementation platform('com.google.firebase:firebase-bom:30.3.2')
    implementation 'com.google.firebase:firebase-auth'
}
configurations.all {
    exclude group: 'com.google.android.gms', module: 'play-services-safetynet'
}

上述解决方案应该适用于任何存在此问题的项目,无论哪个库实际包含 safetynet 模块。

对于任何感兴趣的人,这里有一些简单的命令可以在 Android Studio 终端中检查您的项目依赖项(这会将它们写入 txt 文件中以便于阅读):

./gradlew app:dependencies > dependencies.txt

评论

0赞 AppSolves 9/27/2022
我在使用 Firebase Auth 时遇到了同样的问题。我试过这个,它不再在 Google Play 控制台中显示错误,但使应用程序完全崩溃。它说找不到该模块。
1赞 Tommy 9/29/2022
这完全取决于您的实现。如果您使用的 Firebase Auth 的哪一部分需要 SafetyNet,则此操作将不起作用。那么忽略警告的选项可能最适合您。对我来说,这很有效,因为我的大多数应用程序只使用电子邮件身份验证。
0赞 AppSolves 9/29/2022
我不使用电话身份验证,只使用电子邮件身份验证和 Google 登录,但 Google 登录不使用 SafetyNet API,是吗?
2赞 AppSolves 9/29/2022
好吧,我现在只是忽略警告并等待 Firebase 迁移
2赞 Kevin 4/20/2023 #3

更新 - 2023 年 3 月 28 日

发布了 Firebase Auth 21.2.0 (BoM 31.4.0),在手机身份验证 https://firebase.google.com/support/release-notes/android#auth_v21-2-0 中增加了对 Play Integrity 的支持

然而,正如最新评论:https://github.com/firebase/firebase-android-sdk/issues/3890#issuecomment-1488368740

But I still see the warning in the Play console.
=> That's because the SafetyNet SDK is still being used as a fallback.We plan to completely remove the SafetyNet SDK in a future release - I will post a new comment to this thread when that happens.

我想知道我的 Firebase 控制台> App Check 中是否未启用播放完整性 API。然后,忽略此警告,在使用我的应用程序时是否会导致任何阻塞/问题(使用电话身份验证方法)?

0赞 Nayan Dabhi 7/20/2023 #4

Firebase 身份验证库本身导入 SafetyNet Attestation API 供内部使用。

在最新版本的 Firebase Authentication 22.0.0 中,他们删除了 SafetyNet Attestation API,现在使用 Play 完整性

因此,请更新您的身份验证库版本,或者如果使用 Firebase BOM,则将版本更新到 32.0.0 或最新版本。