(No在通道plugins.flutter.io...上找到方法canLaunch的实作)

sqyvllje  于 2022-12-05  发布在  Flutter
关注(0)|答案(1)|浏览(139)


enter image description here我正在构建一个使用firebase的应用程序,并共享应用程序的内容应用程序运行正常,但当我添加firebase包时,出现错误:
缺少插件异常(未在通道plugins.flutter.io/url_launcher上找到方法canLaunch的实现)
MissingPluginException(未在通道plugins.flutter.io/share上找到方法canLaunch的实现)
缺少插件异常(未在通道插件上找到方法canLaunch的实现)。
我已经尝试了不止一种方法(flutter clean)很多次(flutter pub get)很多次(flutter run)(reinstall app)很多次我搜索了解决方案,但它没有工作

class Home extends StatefulWidget {
static String id = 'HomeScreen';
const Home({Key? key}) : super(key: key);

@override
_HomeScreenState createState() => _HomeScreenState();
 }

class _HomeScreenState extends State<Home> {

Future<InitializationStatus> _initGoogleMobileAds() {
return MobileAds.instance.initialize();
}

 late BannerAd _bannerAd;

 bool _isBannerAdReady = false;

  @override
  void initState() {
 _bannerAd = BannerAd(
  adUnitId: AdHelper.bannerAdUnitId,
  request: AdRequest(),
  size: AdSize.banner,
  listener: BannerAdListener(
    onAdLoaded: (_) {
    setState(() {
      _isBannerAdReady = true;
    });
    },
    onAdFailedToLoad: (ad, err) {
     print('Failed to load a banner ad: ${err.message}');
     _isBannerAdReady = false;
      ad.dispose();
    },
  ),
 );

 _bannerAd.load();
 enter image description here}

 @override
 void dispose() {
  _bannerAd.dispose();
  super.dispose();
 }}

我在具有_launchUrl()的同一个类中添加了广告

_launchURL() async {
    const url = 'url';
    if (await canLaunch(url)) {
    await launch(url);
    } else {
  throw 'Could not launch $url';
   }
  }

和_share()方法还

onTap: () {
           Share.share(appUrl);
              },
6uxekuva

6uxekuva1#

我得到的答案是我使用的flutter_facebook_auth包:读取文档link description here
当您安装此插件时,您需要在Android上配置插件,然后再运行项目。如果您不这样做,您将有一个没有实现找到错误,因为Facebook SDK在Android上抛出一个异常时,配置尚未定义,这将锁定您的项目中的其他插件。如果您不需要插件,请删除或注解它。

相关问题