Flutter与Android通信开发指南,android基础编程

网易游戏

严格来说我投的是网易互娱(区别于雷火&盘古,后面再说更多区别),走的内推。网易游戏以其笔试难度大著名,这次也不例外;所有的内推都要求参加统一笔试,我记得笔试有几场,我是在第一场。内推的岗位是网易游戏最核心的“游戏研发工程师”,地点是杭州。

笔试用的牛客网平台,大大的赞。笔试一共四道编程题,一共150分钟,难度都很大,前三题用不到啥高深的算法,但需要想到解题的思路,最后一题是一个多重背包问题。笔试我一共过了三题半,因为最后一题不知道为啥内存超限了,用的primary int和动态规划,理论上是不会内存超限的。做完笔试题几乎就有把握能进面试了,当时预感能做出两题就能进面试,后来发现好多人只做出了一题就进面试了。

public void onMessage(String s, BasicMessageChannel.Reply reply) {//处理Dart发来的消息

reply.reply(“BasicMessageChannel收到:” + s);//可以通过reply进行回复

if (activity instanceof IShowMessage) {

((IShowMessage) activity).onShowMessage(s);

}

Toast.makeText(activity, s, Toast.LENGTH_SHORT).show();

}

/**

  • 向Dart发送消息,并接受Dart的反馈

  • @param message 要给Dart发送的消息内容

  • @param callback 来自Dart的反馈

*/

void send(String message, BasicMessageChannel.Reply callback) {

messageChannel.send(message, callback);

}

@Override

public void reply(String s) {

}

}

[实例源码下载](()

[](()Dart端:

构造方法原型

const BasicMessageChannel(this.name, this.codec);

  • String name - Channel的名字,要和Native端保持一致;

  • MessageCodec<T> codec - 消息的编解码器,要和Native端保持一致,有四种类型的实现具体可以参考Native端的介绍;

setMessageHandler方法原型

void setMessageHandler(Future handler(T message))

  • Future<T> handler(T message) - 消息处理器,配合BinaryMessenger完成消息的处理;

在创建好BasicMessageChannel后,如果要让其接收Native发来的消息,则需要调用它的setMessageHandler方法为其设置一个消息处理器。

send方法原型

Future send(T message)

  • T message - 要传递给Native的具体信息;

  • Future<T> - 消息发出去后,收到Native回

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值