发布到 Google Play 商店后,MissingPluginException(未在频道 plugins.flutter.io/google_sign_in 上找到方法 init 的实现)
MissingPluginException(No implementation found for method init on channel plugins.flutter.io/google_sign_in) after publishing to Google Play Store
我之前问过类似的问题,但在将我的应用发布到 Play 商店的内部和封闭测试后,我在 Google 登录时遇到了问题。它在 Android 和 iOS 的模拟器上运行良好,当我在调试和发布模式下从我的计算机 运行 它在真实设备上运行良好,但一旦发布到 Play 商店,一切都坏了。我得到的错误是
MissingPluginException(未在通道 plugins.flutter.io/google_sign_in 上找到方法 init 的实现)
我有什么特别想念的吗?我觉得这是一步解决方案,但我找不到它。
在 .yaml 中添加这个库
google_sign_in: ^0.0.2
然后将其导入您的登录屏幕
import io.flutter.plugins.GeneratedPluginRegistrant;
然后将其添加到 onCreate 函数
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GeneratedPluginRegistrant.registerWith(this);
}
我遇到了和你一样的问题(同样的错误消息,使用 Flutter,只在应用商店之后出现)并且能够通过在这里找到一个类似的问题来解决这个问题:
https://github.com/flutter/flutter/issues/65334
我加了
buildTypes {
release {
minifyEnabled false
shrinkResources false
...
到我的 build.gradle 文件。您还可以将这两个值都设置为 true 和 运行 flutter run --release
以在本地重现该问题。当您使用 flutter build appbundle
构建时,默认情况下它会收缩,而 运行ning 在本地不会收缩,这就是为什么您在 运行ning 在本地时看不到问题。它与正在修剪的 google 登录代码有关。这确实是一个解决方法。
在我的例子中,我尝试从 MainActivity 调用方法,但在 AndroidManifest.xml
activity 标签中有错误的名称,如下所示:
"io.flutter.embedding.android.FlutterFragmentActivity"
所以我改成了
".MainActivity"
我在 React Native 上遇到了同样的问题,我所要做的就是更改 android/app/build。gradle
buildTypes {
release {
minifyEnabled true
至
buildTypes {
release {
minifyEnabled false
在 运行 之前再次同步和清理构建
我之前问过类似的问题,但在将我的应用发布到 Play 商店的内部和封闭测试后,我在 Google 登录时遇到了问题。它在 Android 和 iOS 的模拟器上运行良好,当我在调试和发布模式下从我的计算机 运行 它在真实设备上运行良好,但一旦发布到 Play 商店,一切都坏了。我得到的错误是
MissingPluginException(未在通道 plugins.flutter.io/google_sign_in 上找到方法 init 的实现)
我有什么特别想念的吗?我觉得这是一步解决方案,但我找不到它。
在 .yaml 中添加这个库
google_sign_in: ^0.0.2
然后将其导入您的登录屏幕
import io.flutter.plugins.GeneratedPluginRegistrant;
然后将其添加到 onCreate 函数
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
GeneratedPluginRegistrant.registerWith(this);
}
我遇到了和你一样的问题(同样的错误消息,使用 Flutter,只在应用商店之后出现)并且能够通过在这里找到一个类似的问题来解决这个问题: https://github.com/flutter/flutter/issues/65334
我加了
buildTypes {
release {
minifyEnabled false
shrinkResources false
...
到我的 build.gradle 文件。您还可以将这两个值都设置为 true 和 运行 flutter run --release
以在本地重现该问题。当您使用 flutter build appbundle
构建时,默认情况下它会收缩,而 运行ning 在本地不会收缩,这就是为什么您在 运行ning 在本地时看不到问题。它与正在修剪的 google 登录代码有关。这确实是一个解决方法。
在我的例子中,我尝试从 MainActivity 调用方法,但在 AndroidManifest.xml
activity 标签中有错误的名称,如下所示:
"io.flutter.embedding.android.FlutterFragmentActivity"
所以我改成了
".MainActivity"
我在 React Native 上遇到了同样的问题,我所要做的就是更改 android/app/build。gradle
buildTypes {
release {
minifyEnabled true
至
buildTypes {
release {
minifyEnabled false
在 运行 之前再次同步和清理构建