提问人:MANISH 提问时间:7/19/2022 更新时间:7/20/2023 访问量:22261
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
问:
当我尝试在 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
答:
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
- 如果问题与 Firebase Auth 有关,那么这就是问题所在,并且尚未解决: https://github.com/firebase/firebase-android-sdk/issues/3890
- 谷歌的人说,他们有更多的优先问题 https://github.com/firebase/firebase-android-sdk/issues/3890#issuecomment-1230092869
- 更多信息:
- 2023 年 6 月是迁移截止时间:该应用将继续运行,但可能会出现问题和弃用警告。
- 2024 年 6 月:具有 SafetyNet 的应用将停止工作。
- 在此之前,您应该忽略并订阅最新更新。https://github.com/firebase/firebase-android-sdk/issues/3890#issuecomment-1237167170
谢谢!
评论
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
评论
更新 - 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。然后,忽略此警告,在使用我的应用程序时是否会导致任何阻塞/问题(使用电话身份验证方法)?
Firebase 身份验证库本身导入 SafetyNet Attestation API 供内部使用。
在最新版本的 Firebase Authentication 22.0.0 中,他们删除了 SafetyNet Attestation API,现在使用 Play 完整性。
因此,请更新您的身份验证库版本,或者如果使用 Firebase BOM,则将版本更新到 32.0.0 或最新版本。
评论