这是关于 googleSignIn 的错误: MissingPluginException(在频道 plugins.flutter.io/google_sign_in 上找不到方法 init 的实现)

沙美

当我尝试继续使用 googleSignIn 时出现错误

我到处搜索以找到解决方案,甚至stackoverflow中的每个标题都已阅读并应用了他们悲伤的内容,但似乎无法解决

E/flutter (18732): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: 
MissingPluginException(No implementation found for method init on channel 
plugins.flutter.io/google_sign_in)
E/flutter (18732): #0      MethodChannel._invokeMethod 
(package:flutter/src/services/platform_channel.dart:156:7)
E/flutter (18732): <asynchronous suspension>
E/flutter (18732): #1      GoogleSignIn._callMethod 
(package:google_sign_in/google_sign_in.dart:233:5)
E/flutter (18732): <asynchronous suspension>
E/flutter (18732): #2      GoogleSignIn.signIn.isCanceled 
(package:google_sign_in/google_sign_in.dart)
E/flutter (18732): <asynchronous suspension>
E/flutter (18732): 

提供codee如下

我想让它显示我在initstate中指定的静默条目的错误,我首先在那里得到错误,然后当我点击谷歌登录按钮时,我得到了我在开始时详细添加的错误,你可以按照代码在这里。

final GoogleSignIn googlegiris = GoogleSignIn();
final bool girdimi=false;
 @override
 void initState() {
   googlegiris.onCurrentUserChanged.listen((googleHesap) {
   setState(() {
     kullaniciKontrol(googleHesap);
    });
   }, onError: (gHata) {
    print("Hata Mesaj: " + gHata.toString());
   });

googlegiris.signInSilently(suppressErrors: false).then((googleHesap2) {
    setState(() {
     kullaniciKontrol(googleHesap2);
    });
     }).catchError((gHata) {
    print("Hata Mesaj 2: " + gHata.toString());
   });
  super.initState();
 }
 kullaniciGiris() {
setState(() {
  googlegiris.signIn();
});
 }

  kullaniciKontrol(GoogleSignInAccount girisHesap) async {
    if (girisHesap != null) {
      await kullaniciFireStoreKayit();
      setState(() {
      girdimi = true;
      });
     } else {
      setState(() {
      girdimi = false;
     });
    }
  }
     kullaniciFireStoreKayit() async {
final GoogleSignInAccount gAnlikKullanici = googlegiris.currentUser;
DocumentSnapshot<Map<String, dynamic>> documentSnapshot = await kullaniciRef.doc(gAnlikKullanici.id).get();
if (!documentSnapshot.exists) {
  final username = await Navigator.push(context, MaterialPageRoute(builder: (context) => HesapOlusturmaSayfasi()));

  kullaniciRef.doc(gAnlikKullanici.id).set({
    "id": gAnlikKullanici.id,
    "profileName": gAnlikKullanici.displayName,
    "username": username,
    "url": gAnlikKullanici.photoUrl,
    "email": gAnlikKullanici.email,
    "biography": "",
    "timestamp": timestamp,
  });
  await takipciRef.doc(anlikKullanici.id).collection("takipciler").doc(anlikKullanici.id).set({});
  documentSnapshot = await kullaniciRef.doc(anlikKullanici.id).get();
}
anlikKullanici = Kullanici.fromDocument(documentSnapshot.data());
    }
    @override
     Widget build(BuildContext context) {
       if (girdimi == true) {
         return GirisEkran();`enter code here`
        } else {
       return kayitEkrani();
      }
    }
沙美

我自己解决了这个问题,我去了这个网站https://console.cloud.google.com/并且我已经使用我的谷歌帐户从那里启用了Google People API,我用 . 我从这个信息https://pub.dev/packages/google_sign_inAndroid的整合。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章