title: (No implementation found for method canLaunch on channel plugins.flutter.io...)
body: <p><a href="https://i.stack.imgur.com/j0xYB.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/j0xYB.png" alt="enter image description here" /></a><a href="https://i.stack.imgur.com/SqrCW.png" rel="nofollow noreferrer">enter image description here</a>I am building an application that uses firebase and share the content of the application
  The app was working fine and when I added the firebase packages I got errors:</p>
  <p>MissingPluginException(No implementation found for method canLaunch on channel plugins.flutter.io/url_launcher)</p>
  <p>MissingPluginException(No implementation found for method canLaunch on channel plugins.flutter.io/share)</p>
  <p>MissingPluginException(No implementation found for method canLaunch on channel plugins.flutter.io/google_mobile_ads)</p>
  <p>I have tried more than one method
  (flutter clean)  many times
  (flutter pub get) many times
  (flutter run)
  (reinstall app) many times
  I searched for solutions but it didn't work</p>
  <pre><code>class Home extends StatefulWidget {
  static String id = 'HomeScreen';
  const Home({Key? key}) : super(key: key);
  
  @override
  _HomeScreenState createState() =&gt; _HomeScreenState();
   }
  
  class _HomeScreenState extends State&lt;Home&gt; {
  
  Future&lt;InitializationStatus&gt; _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();
   }}
  </code></pre>
  <p>I added ads in same class that has _launchUrl()</p>
  <pre><code>    _launchURL() async {
      const url = 'url';
      if (await canLaunch(url)) {
      await launch(url);
      } else {
    throw 'Could not launch $url';
     }
    }
  </code></pre>
  <p>and _share() method also</p>
  <pre><code>         onTap: () {
             Share.share(appUrl);
                },
  </code></pre>