当前位置: 首页 > news >正文

android - FlutterActivity MethodChannel和FlutterView

android - FlutterActivity MethodChannel和FlutterView

因此,大约4个月前,我编写了Flutter应用程序。现在,我想做一个小小的更改,但是我不能再编译应用程序了,因为GeneratedPluginRegistrant.registerWith(this)不再起作用了,我没有更改Kotlin代码,只更改了Dart代码。

“GeneratedPluginRegistrant.registerWith( this )”中的“”向我显示此错误:

Type mismatch.    
Required: FlutterEngine!    
Found: MainActivity

MainActivity类:

import android.os.Bundle
import io.flutter.app.FlutterActivity
import io.flutter.plugin.common.MethodChannel
import io.flutter.plugins.GeneratedPluginRegistrant
import io.flutter.view.FlutterMainclass MainActivity : FlutterActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)GeneratedPluginRegistrant.registerWith(this) // here is the error: Type mismatch. Required: FlutterEngine! Found: MainActivityMethodChannel(flutterView, CHANNEL).setMethodCallHandler { call, result ->if (call.method == "helloFromNativeCode") {val greetings = helloFromNativeCode()result.success(greetings)}}}private fun helloFromNativeCode(): String {return "Hello from Native Android Code"}companion object {private const val CHANNEL = "flutter.native/helper"}
}

如果使用:

import io.flutter.embedding.android.FlutterActivity

代替

import io.flutter.app.FlutterActivity

我可以用

override fun configureFlutterEngine(flutterEngine: FlutterEngine) {GeneratedPluginRegistrant.registerWith(flutterEngine);}

但遇到以下问题:

MethodChannel(flutterView, CHANNEL).setMethodCallHandler { call, result ->if (call.method == "helloFromNativeCode") {val greetings = helloFromNativeCode()result.success(greetings)}}

因为我在 flutterView 上遇到错误:

Unresolved reference: flutterView

代码如下所示:

import android.os.Bundle
import io.flutter.embedding.android.FlutterActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodChannel
import io.flutter.plugins.GeneratedPluginRegistrant
import io.flutter.view.FlutterMainclass MainActivity : FlutterActivity() {override fun configureFlutterEngine(flutterEngine: FlutterEngine) {GeneratedPluginRegistrant.registerWith(flutterEngine);}override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)MethodChannel(flutterView, CHANNEL).setMethodCallHandler { call, result -> // here is the errorif (call.method == "helloFromNativeCode") {val greetings = helloFromNativeCode()result.success(greetings)}}}private fun helloFromNativeCode(): String {return "Hello from Native Android Code"}companion object {private const val CHANNEL = "flutter.native/helper"}
}

我希望有一个人可以帮助我。

最佳答案

代替flutterView,请使用flutterEngine.getDartExecutor()。

关于android - FlutterActivity MethodChannel和FlutterView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59323505/

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_package_demo/theme/themes.dart';class UserPage extends StatefulWidget {const UserPage({Key key}) : super(key: key);@override_UserPageState createState() => _UserPageState();
}const String CHANNEL ="www.luckly.work"; //这儿要与        MethodChannel(flutterView, CHANNEL)中CHANNEL名称一致
const String invokeMethod ="breeze"; //这儿要与       call.method == invokeMethod中invokeMethod名称一致
var channel = const MethodChannel(CHANNEL);class _UserPageState extends State<UserPage> {String _result = "";@overrideWidget build(BuildContext context) {final theme = Theme.of(context);return Scaffold(appBar: AppBar(title: Text("个人",style: TextStyle(color: theme.accentColor,),),),body: Container(child: Column(children: [Text("个人",style: TextStyle(color: theme.accentColor,),),FlatButton(onPressed: () {setState(() {});currentTheme.toggleTheme();},child: Text("多主题",style: TextStyle(color: theme.accentColor,),),),Center(child: RaisedButton(onPressed: () async {var result = await channel.invokeMethod(invokeMethod);setState(() {_result = result;});print(result);},child: new Text(_result),),)],),),);}
}
package com.example.flutter_package_demo//import io.flutter.app.FlutterActivity
import android.os.Bundle
import io.flutter.app.FlutterActivity
import io.flutter.plugin.common.MethodChannel
import io.flutter.plugins.GeneratedPluginRegistrant//import io.flutter.embedding.android.FlutterActivity//import io.flutter.view.FlutterMainclass MainActivity : FlutterActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)//        GeneratedPluginRegistrant.registerWith(this) // here is the error: Type mismatch. Required: FlutterEngine! Found: MainActivityMethodChannel(flutterView, CHANNEL).setMethodCallHandler { call, result ->if (call.method == InvokeMethod) {val greetings = successNativeCode()result.success(greetings)}}}private fun successNativeCode(): String {return "我是android原生跑过来的数据"}companion object {private const val CHANNEL = "www.luckly.work"private const val InvokeMethod = "breeze"}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-35474.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

PCB设计中电流与线宽的关系

原文链接&#xff08;点击原文链接更多精彩学习文章和学习内容&#xff09;&#xff1a;http://blog.bools.cn/archives/1262 PCB设计中电流与线宽的关系一、PCB设计铜铂厚度、线宽和电流关系二、PCB电流与线宽三、从图像中确定线宽四、 经验公式五、在PCB设计中线宽选择的经验…...

移动端开发那些事

1px解决方案 为什么移动端css里面写了1px, 实际看起来比1px粗. 其实原因很好理解:这2个’px’的含义是不一样的. 移动端html的header总会有一句 <meta name"viewport" content"widthdevice-width, initial-scale1.0, maximum-scale1.0, user-scalableno&qu…...

HTML(菜鸡视角)

heading <h> 标题 </h> 多级标题时&#xff1a;<h1> <h2>......级联 Paragraph <p> 段落内容 </p> Note&#xff01; <!-- 注释内容 --> Element <main> 主要内容 </main> image <img src&quo…...

Hibernate对实际数据进行操作

//增 public static void main(String[] args){ Configuration cfg null; SessionFactory sf null; Session session null; Transaction ts null; User u new User(); System.out.println("请输入用户信息:&quo…...

GCC的-Wl,--wrap编译选项

GCC的--wrap是一个链接器选项&#xff0c;假如我们要编译的源文件为main.c&#xff0c;编译命令如下&#xff1a; gcc main.c -Wl,--wrapfunc -o main.elf有以下效果&#xff1a; 如果符号func没有&#xff08;在当前源文件&#xff09;定义&#xff0c;就链接到__wrap_func如…...

个人技能点(郎)

个人技能点1. 熟悉 h5 和 c3 新特性&#xff1a;语义化标签&#xff0c;flex 布局&#xff0c;动画等H5 新特性&#xff1a;2. 熟悉js作用域、原型、事件轮询机制、闭包等原理&#xff1b;js 作用域闭包事件轮询机制原型3. 熟悉 ES6 语法标准 promise&#xff0c;async/await 异…...

【Android 11】使用Android Studio调试系统应用五):编译Settings 模块、解决编译错误

文章目录 1. 篇头语2. 系列文章3. 关联Git4. 完善Settings的依赖4. 1 Android.bp回顾4.2 提取出所需androndx支持库4.2.1 依赖列表(android.bp)4.2.2 转换后的列表(build.gradle)4.2 提取出所需aar库4.3 提取出依赖的本地jar包4.3.1 查找本地jar包的位置4.3.2 所需jar列表(ando…...

1.5 异常

什么是异常 异常就是在程序运行期间&#xff0c;因为某些原因导致程序出现了错误的情况。 异常封装了三个重要信息: 类型&#xff0c;信息&#xff0c;行号 异常的简单继承结构 Throwable |- Error 系统级别的错误&#xff0c;无法处理&#xff0c;只能停止运行 |- Excepti…...

[HCIP] 10 - IGMP 协议

一、IGMP 介绍 二、组播组管理协议工作机制&#xff1a;...

海大09-10.3题:编程计算并输出1*2+3*4+5*6+...+(n-1)*n的值,其中,n的值由键盘输入。(8分)

题目 本题是中国海洋大学《C语言程序设计》2009-2010年第一学期编程题第3题。 题目&#xff1a; 编程计算并输出12345*6…&#xff08;n-1&#xff09;*n的值&#xff0c;其中&#xff0c;n的值由键盘输入。&#xff08;8分&#xff09; 以下是本篇文章正文内容&#xff0c;欢…...

DEDE织梦如何做中英文多语言站

说道中英文站&#xff0c;是很多用户想用dedecms织梦程序做多语言站&#xff0c;下面网分享下做中英文多语言版本的站点如何操作&#xff0c;希望能帮助到大家。 一、首先在后台建栏目&#xff0c;有三点需要注意 1.需要做几种语言就加几个大的栏目。 2.栏目“常规选项”的文…...

2021-08-23 linux的部分基本命令与vi/vim的部分命令

linux的基本命令 文章目录linux的基本命令前言一、APT(Advanced Packing Tool)1.工作原理2.修改源3.几个常用的命令二、vi/vim一. vi/vim 模式1.vi有两种工作模式二. vi/vim 命令1.vim:退出命令2.vim删除与修改命令3.vim拷贝与粘贴命令4.vim 撤销命令5.vim 搜索命令6.vim 替换命…...

题解报告:m10

找abc(add) 问题描述&#xff1a; 有两个正整数集合{An},{Bm}&#xff0c;其中整数值均不超过106。输出正整数x&#xff0c;判断是否存在A中的一个数a与B中的一个数b的和为x。 输入格式&#xff1a; 第一行为正整数t(≤5)&#xff0c;表示数据组数&#xff1b;每组数据中&a…...

VISSIM二次开发(Python)大作业总结2

VISSIM二次开发&#xff08;Python&#xff09;&大作业总结2 写在前面 前一小节已经概括了基本所有这次使用的二次开发的知识&#xff0c;在这一小节&#xff0c;我们主要介绍本文对.att文件的读取和绘图以及分析的工作。 在这一部分我们将展开对这一部分的介绍&#xf…...

sql中grant授权语句revoke撤销语句

MySQL 赋予用户权限命令的简单格式可概括为&#xff1a; grant 权限 on 数据库对象 to 用户 一、grant 普通数据用户&#xff0c;查询、插入、更新、删除 数据库中所有表数据的权利 grant select on testdb.*to common_user%; grant insert on testdb.*to common_user%; gran…...

QT如何设置小程序不被重复启动多个该程序

添加互斥锁 判断 如果进程有该程序&#xff0c;则return不运行 #if defined Q_OS_WIN32 //for win #include <windows.h> bool checkOnly() {// 创建互斥量HANDLE m_hMutex CreateMutex(NULL, FALSE, L"fortest_abc123" );// 检查错误代码if (GetLas…...

jquery--动画效果

show() : 显示隐藏的匹配元素。 这个就是 show( speed, [callback] ) 无动画的版本。如果选择的元素是可见的&#xff0c;这个方法将不会改变任何东西。无论这个元素是通过hide()方法隐藏的还是在CSS里设置了display:none;&#xff0c;这个方法都将有效。 hide()&#xff1a…...

SVN错误:Previous operation has not finished;run “cleanup“ if it was interrupted.

问题分析&#xff1a; SVN报错以上错误&#xff0c;可能是修改本地的文件之前没有update&#xff0c;导致commit的时候产生冲突&#xff0c;致使SVN崩溃&#xff0c;陷入clean up 死循环。 svn 的 operation是存放在 "work queue" 里的。而 "work queue"…...

【力扣1044. 最长重复子串】二分查找+Rabin-Karp 字符串编码、后缀数组(Python3)

题目描述 https://leetcode-cn.com/problems/longest-duplicate-substring/ 思路题解 方法一&#xff1a;二分查找Rabin-Karp 字符串编码 https://leetcode-cn.com/problems/longest-duplicate-substring/solution/zui-chang-zhong-fu-zi-chuan-by-leetcode/ class Solut…...

政产学研各界推动软件和信息技术服务业增速发展

​日前&#xff0c;工业和信息化部发布的最新数据显示&#xff0c;上半年&#xff0c;我国软件和信息技术服务业业务收入呈加快增长态势&#xff0c;完成软件业务收入44198亿元&#xff0c;同比增长23.2%&#xff0c;近两年复合增长率为14.7%。 从利润水平来看&#xff0c;上半…...

Android学习笔记————关于使用RecyclerView进行替代ListView

写在前面 本文章只作为本人学习后的学习总结&#xff0c;欢迎各位大佬进行指正&#xff0c;切勿将其作为教程进行学习。 开发步骤 RecyclerView与ListView开发类似 大体可以分为四部 &#xff08;添加库依赖&#xff09;----->编辑数据------->创建适配器------>设…...

innodb存储引擎之:表空间

概览 https://www.mubucm.com/doc/5X-MdVzKDKB 为什么innodb设计了“区”的概念 如果以页为单位来分配存储空间&#xff0c;B树索引中同一层级的双向链表相邻的两个页之间的物理位置可能离得非常远&#xff0c;会导致遍历索引的时候&#xff0c;无法使用顺序I/O&#xff0c;所…...

Python面向对象封装案例——士兵突击

面向对象封装案例 II 目标 士兵突击案例身份运算符 封装 封装 是面向对象编程的一大特点面向对象编程的 第一步 —— 将 属性 和 方法 封装 到一个抽象的 类 中外界 使用 类 创建 对象&#xff0c;然后 让对象调用方法对象方法的细节 都被 封装 在 类的内部 一个对象的 属性…...

PAT (乙级)1014 福尔摩斯的约会 (20 分)C语言

大侦探福尔摩斯接到一张奇怪的字条&#xff1a;我们约会吧&#xff01; 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了&#xff0c;字条上奇怪的乱码实际上就是约会的时间星期四 14:04&#xff0c;因为前面两字符串中第 1 对相同的大写英…...

【深度学习与图神经网络核心技术实践应用高级研修班-Day4】图像标题生成-image_caption_generation(encoder-decoder)

图像标题生成1. 概述1.1 图像标题生成1.2 CNN1.3 Decoder1.4 与文本翻译模型对比2. 模型原理2.1 图像标题生成模型2.2 学习目标、损失函数3. 代码实现3.1 数据集3.2 数据预处理3.3 构建模型4. 实验结果4.1 损失曲线4.2 测试模型5. 参考文献1. 概述 1.1 图像标题生成 图像标题…...

pydub 安装 win10

在 anaconda 环境下&#xff0c;pip install pydub&#xff0c;检测是否安装成功出现错误&#xff1a; RuntimeWarning: Couldnt find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn("Couldnt find ffmpeg or avconv - defaulting to ffmpeg, but m…...

算法刷题计划一----数据结构2-6(leetCode)

415. 字符串相加 给定两个字符串形式的非负整数 num1 和num2 &#xff0c;计算它们的和。 提示&#xff1a; num1 和num2 的长度都小于 5100 num1 和num2 都只包含数字 0-9 num1 和num2 都不包含任何前导零 你不能使用任何內建 BigInteger 库&#xff0c; 也不能直接将输入的…...

HTML(菜鸡视角)

heading <h> 标题 </h> 多级标题时&#xff1a;<h1> <h2>......级联 Paragraph <p> 段落内容 </p> Note&#xff01; <!-- 注释内容 --> Element <main> 主要内容 </main> image <img src&quo…...

剑指Offer14-剪绳子12

题目描述–剪绳子1 思路分析 首先要分析出怎么切分是最优方案&#xff0c;显然和一定时&#xff0c;分成相等的数的乘积最大。用简单的数学归纳的思想可以发现&#xff0c;4对应2*2&#xff0c;5对应2x3&#xff0c;6对应3x3&#xff0c;7对应3x2x2&#xff0c;8对应3x3x2&…...

能被5和6同时整除 并且每10个数一行 用python编程 记录

2021-8-23 题列出为100到1000之间能同时被5和6整除的数&#xff0c;并且10个数为一列 接触该题 编写了下面的代码 下面展示一些 内联代码片。 for i in range(100, 1001):if i % 5 0 and i % 6 0:print(i, end" ")结果是&#xff1a; ** 120 150 180 210 240 270…...

rancher配置日志集中管理

rancher中配置pod日志集中管理 不管在什么环境下&#xff0c;日志的收集及集中化管理是开发及日常运维排错必不可少的。 关于日志集中化收集架构有很多种&#xff0c;最常见的如ELK、EFK等。 本文采用rancher2.4.5中集成的容器日志收集工具为fluentd。这里的fluent不是efk当中的…...

Windows内核--子系统(3.5)

到底什么是子系统? 子系统是用户层概念。在Windows内核之上&#xff0c;如果想要执行类UNIX应用程序&#xff0c;就是POSIX子系统&#xff0c;如果要类似OS/2环境&#xff0c;就是OS/2子系统。 如何能模拟出不同子系统呢? 一般需要子系统用户态应用程序和相关DLL支援。 对于W…...

【微信小程序学习笔记02理解与初始准备】【实战天气微信小程序】

目录 参与的udacity 微信小程序的纳米学位期间的学习笔记&#xff0c;其中代码或描述若有不足部分敬请指点&#xff0c;万分感谢&#xff01; 目录注册小程序账号&#xff0c;获取AppID开发准备目录结构删快速模板中不必要的代码 视图层何为WXML数据绑定列表渲染条件渲染模板事…...

微信小程序实现按首字母检索城市列表

不说废话&#xff0c;上效果图 因为我有多处要用到&#xff0c;所以我这里是写成自定义组件的&#xff0c;你也可以直接改成在page页面编写&#xff1a; 布局左边一个scroll-view&#xff0c;显示城市列表,右边一个view显示字母列表&#xff0c;城市列表这边有首字母显示&…...

微信小程序页面内搜索查询(无后台)

先上图&#xff0c;这是我要实现的效果&#xff01; 当我们没有页面内没有分页又需要搜索时&#xff0c;我们可以直接在前端写搜索功能&#xff0c;这样也极大的减轻了后台查询压力。 这里实现原理用的是indexOf(string)&#xff1a;查询字符串是否包含某个字符 知道这个大家…...

python在centos下安装以及配置

python在centos下安装以及配置 1.背景 centos下默认的都是python2.7下载需要更换为3.x使用&#xff0c;目前大部分应用都是基于pyhton3了 具体步骤&#xff1a; 我下载一个3.8.15的包 https://www.python.org/ftp/python/3.8.15/Python-3.8.15.tgz 小注释&#xff1a;如果…...

微信小程序系列开发(一)

一  微信小程序案例(原创) 二  什么是微信 ​ 微信&#xff08;WeChat&#xff09; 是腾讯公司于2011年1月21日推出的一个为智能终端提供即时通讯服务的免费应用程序&#xff0c;由张小龙所带领的腾讯广州研发中心产品团队打造。微信支持跨通信运营商、跨操作系统平台通过网…...

php微信小程序物流进度推送,thinkphp5推送微信小程序模板消息

什么是微信小程序模板推送呢&#xff1f; 首先一张图给大家看一下&#xff1a;你们有没有收到这些通知。顿时是不是觉得活动性感觉很牛掰。还是先上一下官方文档&#xff1a; 小程序模板消息官方文档文档其实写的很详细清除了&#xff0c;包括返回数据的类型&#xff0c;报错信…...

memcached 学习进修

https://www.cnblogs.com/jaxu/p/5196811.html 安装转载于:https://www.cnblogs.com/zxs-onestar/p/10860326.html...

逻辑推理:五人谁将出国学习(c语言代码实现)

某公司要从赵、钱、孙、李、周五名新毕业的大学生中选派一些人出国学习.选派必满足以下条件&#xff1a; &#xff08;1&#xff09;若赵去&#xff0c;则钱也去. &#xff08;2&#xff09;李、周两人中必有一人去. &#xff08;3&#xff09;钱、孙两人中去且仅去一人. &…...

基于微信小程序的考研复习知识题库在线学习小程序#毕业设计

随着时代的发展&#xff0c;人们对学历的要求也越来越高&#xff0c;普通的本科已经不能满足当前社会对专业知识和学历的要求了&#xff0c;于是很多人在本科毕业之后都会选择进行进修选择考研&#xff0c;但是很多时候考研学子找不到一个合适的地方查看考研相关的资讯和课程&a…...

学习Java编程如何进修自己的动手实践能力

其实现在由于互联网发展愈加快速&#xff0c;涌入了大批量想要学习java的同学&#xff0c;但是目前java学习&#xff0c;基本是哪个都是理论知识偏多&#xff0c;我们更多想知道的是如何增加自己的实践能力呢&#xff1f; 很多的同学有一个误区&#xff0c;非常重视自己对理论知…...

上海计算机信息进修学院高中部好不好,上海市计算机信息进修学院

性质&#xff1a;非营利组织规模&#xff1a;100-499人全称&#xff1a;上海市计算机信息进修学院华东理工大学成立于1952年&#xff0c;是教育部直属的国家重点高校。1966年学校进入国家“211工程”重点建设行列&#xff0c;2000年经教育部批准建立研究生院&#xff0c;2008年…...

机器学习入门课程

在开始机器学习速成课程之前&#xff0c;请先阅读下面的前提条件和准备工作部分&#xff0c;以确保您已做好完成所有单元所需的准备工作。前提条件机器学习速成课程并不会假定或要求您预先掌握机器学习方面的任何知识。但是&#xff0c;为了能够理解课程中介绍的概念并完成练习…...

医用计算机学习心得,计算机学习心得体会范文

跟着信息技能的高速开展并疾速浸透到社会糊口的方方面面&#xff0c;较量争论机日趋成为人们进修、任务、糊口不成短少的根本东西&#xff0c;接上去就跟好范文网小编一同往理解一下对于较量争论机进修心患上领会范文吧!较量争论机进修心患上领会范文 篇【1】较量争论机课是一门…...

机器学习入门作业

VV机器学习入门笔记&#xff08;一&#xff09;—python的简单线性回归实现线性回归&#xff08;吴恩达机器学习例题&#xff09;一、问题二、单变量线性回归1.引入的库介绍2.python实现流程2.1原始数据处理2.2读取数据及代价函数2.3可视化3.python程序二、多变量线性回归1.引入…...

统计学习方法超详细笔记-第一章 统计学习与监督学习概率

1.1 统计学习 统计学习分为&#xff1a;监督学习、非监督学习、半监督学习及强化学习 统计学习 统计学习的统计学习方法如下&#xff1a; 从给定的、有限的、用于学习的训练数据集合出发 假设数据是独立同分布产生的 假设要学习的模型是属于某个函数的集合&#xff0c;成为…...

关于迁移学习核心技术开发与应用的进修计划书

新一代人工智能重大科技项目&#xff0c;聚焦基础理论和关键共性技术的前瞻布局&#xff0c;包括研究大数据智能、跨媒体感知计算、混合增强智能、群体智能、自主协同控制与决策等理论&#xff0c;研究知识计算引擎与知识服务技术、跨媒体分析推理技术、群体智能关键技术、混合…...

【计算机英语】学习从现在开始,行动起来

前言 如果你曾经在学校了过了四级,现在依旧听不懂,看不懂单词,甚至看到音标都不知道怎么读。 你的目标是: 能够流畅沟通,生活中的英语,重回四级水平,流畅在外企沟通 推荐的资料和方法如下,这个资料和方法会让你先达到四级水平。 在达到四级水平之后,学习任何方向都…...

迁移学习核心技术开发与应用进修

各企事业单位&#xff1a; 《gwy关于印发新一代人工智能发展规划的通知》指出&#xff1a;“新一代人工智能重大科技项目&#xff0c;聚焦基础理论和关键共性技术的前瞻布局&#xff0c;包括研究大数据智能、跨媒体感知计算、混合增强智能、群体智能、自主协同控制与决策等理论…...