美文网首页Flutter
Flutter "No implementation found

Flutter "No implementation found

作者: 李有钱灬 | 来源:发表于2021-05-28 14:18 被阅读0次

    之前出现这种问题参考网上的找到的最多的办法:

    1、clean一下
    2、再运行flutter pub get
    3、然后退出as
    4、重新打开as,再run,OK了

    但是后来新添加一个package后又出现了这种问题,然后再怎么执行上边的步骤都不管用了,网上查了好久各种方法都试过,还是不行,最后结合了一下搜到的方法,可以了,具体原理咱也不知道。。。

    修改Android的MainActivity中的代码

    具体代码如下:

    import android.annotation.SuppressLint;
    import android.os.Bundle;
    // 重点1
    import io.flutter.embedding.android.FlutterActivity;
    import io.flutter.embedding.engine.FlutterEngine;
    import io.flutter.plugin.common.MethodChannel;
    import androidx.annotation.NonNull;
    import io.flutter.plugins.GeneratedPluginRegistrant;
    
    public class MainActivity extends FlutterActivity {
    
        private String flutterMethodChannelName = "flutterCallbackMethodChannel";
        MethodChannel methodChannel_callFlutter;
    
        @SuppressLint("NewApi")
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            methodChannel_callFlutter = new 
            // 重点2
            MethodChannel(getFlutterEngine().getDartExecutor().getBinaryMessenger(), flutterMethodChannelName);
        }
    
        public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
            // 重点3
            super.configureFlutterEngine(flutterEngine);
            GeneratedPluginRegistrant.registerWith(flutterEngine);
        }
    }
    

    注意点:
    1、import io.flutter.embedding.android.FlutterActivity;
    2、onCreate方法中flutterEngine.dartExecutor.binaryMessenger现在无法获取到了,需要修改为getFlutterEngine().getDartExecutor().getBinaryMessenger()
    3、configureFlutterEngine方法中必须调用父类的方法,即:super.configureFlutterEngine(flutterEngine);

    如果你的代码中没有这些方法,那么直接拷过去就完事儿了。

    因为这个破问题,我差点直接放弃flutter了,太难了,网上连个资料都找不到,干!

    记录一下,希望可以帮到跟我一样被flutter虐过的人!

    Just Do IT!

    参考资料:
    1、flutter和Android混编下出现“No implementation found for method xxxx on channel”错误
    2、Flutter 碰到的各种坑 持续更新

    相关文章

      网友评论

        本文标题:Flutter "No implementation found

        本文链接:https://www.haomeiwen.com/subject/ntjssltx.html