flutter attach 解决flutter&iOS混编的痛点(遇到的问题记录)

flutter&iOS混编这里特指,flutter页面和原生页面有交互,不仅是跳转的交互,还有一些数据传递的交互,举个简单的例子,要展示一个flutter的页面,但是页面数据来源于iOS原生(这里说的直白一点是 ,flutter调用了原生的网络请求-。-),做过这种混编的小伙伴,大概都经历过,要首先编译一下flutter,然后再运行Xcode,这个过程,无比耗时(有一部分原因是,我们原生的工程本来编译就慢-。-)。

由于这个导火索,我们发现flutter有一个命令flutter attach就是解决这个问题的,可以在混编的时候使用flutter的热更新,然后 喜大普奔的代码撸起来~~

本文主要记录一下flutter attach执行是遇到的一些问题,首先,说一下执行这个命令的步骤:

1、当然是在终端执行flutter attach(这里默认前面的执行环境都正常,我是直接在VS Code里面执行的)

2、如果同时连接着真机并开着模拟器,这里需要选择一下执行的设备flutter attach -d 后面跟上设备号(设备号是啥?执行完flutter attach后,终端会显示各个设备的设备号,下图中被我哗啦掉的地方)

3、当终端显示Waiting for a connection from Flutter on iphone ....的时候 打开xcode run ,然后打开到flutter页面

4、然后成功了~~~

验证下是不是真的成功了,随便写个log输出,然后command+s 这里保存一下太重要了,用惯了xcode的自动保存的小伙伴们,以后要习惯,写完flutter真的要保存一下,然后终端‘R’一下 ,看看刚才加的log有没有输出,当然所有log都是是在xcode里面输出的。

下面就是遇到的一些问题了,供大家参考:

问题1: 不造啥原因 最后解决办法是 检查flutter版本/分支 切换到master分支后解决

 

问题2:不稳定 过一会儿就会偶现报这个错误 这个问题呢,最后运行了模拟器就好了,跟真机一起热更新,好像。。。。不太好使,模拟器亲测有效

你可能感兴趣的:(flutter开发,学习笔记)