关于鸿蒙适配选择问题

85 天前
 fengqing2
最近公司打算适配鸿蒙,感觉工作量很大。想问问大家更倾向什么技术方案。

app 背景:涉及 SDK 层和 UI 层,SDK 和 UI 层都有大量和原生层交互的工作。因为历史原因,SDK 有 ios 原生和 android 原生两套,sdk 层已经维护了 6 ,7 年了,原来 UI 层也都是有原生的,后来写了个中间层负责把 sdk 的接口提供给 flutter 层,UI 层全部用 flutter 重写了。

三个选择:

1.用鸿蒙原生代码写单独一端

2.SDK 用鸿蒙原生写,继续用中间层把鸿蒙原生层的 sdk 接口提供给 flutter

3.SDK 全用 flutter 写,把中间层、ios 和 android 的原生 sdk 都弃用了,flutterUI 层直接和 flutter sdk 层交互,原先的 ui 层代码逐步替换到只用 flutter sdk


纠结的点:

1 )我之前只负责写 UI 层,SDK 层完全不熟悉,工作量又大,我们部门领导的意思是想让我来做。这个 sdk 层是另外部门的,所以是推给之前负责 sdk 的部门好呢,还是我自己接过来?

2 ) flutter ui 层用到了二十多个需要与原生交互的第三方框架,例如:permission_handler 、path_provider 、sqflite 。 这些库都是没有适配鸿蒙的,如果 flutter UI 层也要适配鸿蒙的话,需要把第三方库都给替换掉,自己造轮子吗? 还不明白这部分需要怎么处理
3083 次点击
所在节点    程序员
26 条回复
alphaControler
83 天前
@vczyh 在 dart 中,一般用 map 传递
alphaControler
83 天前
@vczyh go 和 dart 之间,一般用 map 通讯
alphaControler
83 天前
@vczyh 更详细点就是 rust 将数据转成 json ,在给 dart 语言,再转成 dart 对象
vczyh
83 天前
@alphaControler 我现在用的是 Protocol Buffers ,跟你意思应该一样。
liudong7351
83 天前
肯定选 2 啊。其他选项 1 和 3 ,不是一个人能搞定的,也不是你们一个组能搞定的。
cadillac
80 天前
由于鸿蒙 api12 比较新,貌似 AI 支持的还不是很好,不像 ios 和安卓

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/1091089

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX