logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Compose Multiplatform 三方库 Coil(coil-core)的 OpenHarmony 鸿蒙化适配实战

"值是平台对象、逻辑在公共层"的库有了标准解法。哑图记账模式让缓存行为(驱逐/回退/记账)在 Kotlin 侧完整验证,值本体留在 ArkTS——这个模式对数据库、偏好存储、任意"容器型"库都通用。依赖替换有下限。atomicfu 锁与@Poko这两处替换是"编译依赖"级别的(签名一致、语义一致),上游逻辑零改动。判断一个替换是否越界,看它的单测是否还全绿——30 个上游单测原样通过就是零逻辑修改

文章图片
#harmonyos#华为
Compose Multiplatform 三方库 Coil(coil-core)的 OpenHarmony 鸿蒙化适配实战

"值是平台对象、逻辑在公共层"的库有了标准解法。哑图记账模式让缓存行为(驱逐/回退/记账)在 Kotlin 侧完整验证,值本体留在 ArkTS——这个模式对数据库、偏好存储、任意"容器型"库都通用。依赖替换有下限。atomicfu 锁与@Poko这两处替换是"编译依赖"级别的(签名一致、语义一致),上游逻辑零改动。判断一个替换是否越界,看它的单测是否还全绿——30 个上游单测原样通过就是零逻辑修改

文章图片
#harmonyos#华为
Compose Multiplatform 三方库 KoalaPlot(koalaplot-core)的 OpenHarmony 鸿蒙化适配实战

算法与绘制解耦的判断再次应验。图表库 20 多个 Composable 看着吓人,但价值密度最高的xygraph/util/heatmap/对 Compose 的依赖只有一个带运算符的Dpshim——上游源码一字未改,双 ABI 直接编过。有状态库的桥协议范式。create → 带 id 的操作 op → free的会话模式,把上游的内部状态原封不动留在了 Kotlin 侧,ArkTS 只持有句柄

文章图片
#harmonyos#华为
Compose Multiplatform 三方库 KoalaPlot(koalaplot-core)的 OpenHarmony 鸿蒙化适配实战

算法与绘制解耦的判断再次应验。图表库 20 多个 Composable 看着吓人,但价值密度最高的xygraph/util/heatmap/对 Compose 的依赖只有一个带运算符的Dpshim——上游源码一字未改,双 ABI 直接编过。有状态库的桥协议范式。create → 带 id 的操作 op → free的会话模式,把上游的内部状态原封不动留在了 Kotlin 侧,ArkTS 只持有句柄

文章图片
#harmonyos#华为
Compose Multiplatform 三方库 Calendar(kizitonwose)的 OpenHarmony 鸿蒙化适配实战

这次适配把我之前的"纯算法 CMP 库"经验往前推了一步:上游不是纯算法库,而是一个带着 20 个 Composable 的 UI 组件库。关键在于先按目录判断"值钱的部分"在哪里,发现数据层对 Compose 的依赖只剩注解和Locale,就可以用同包名 shim 把上游源码完整保住。遇到平台expect时,优先去上游其他平台的源集里找现成实现,这次 web 源集里的 CLDR 表就是现成的答案

文章图片
#harmonyos#华为
Compose Multiplatform 三方库 Calendar(kizitonwose)的 OpenHarmony 鸿蒙化适配实战

这次适配把我之前的"纯算法 CMP 库"经验往前推了一步:上游不是纯算法库,而是一个带着 20 个 Composable 的 UI 组件库。关键在于先按目录判断"值钱的部分"在哪里,发现数据层对 Compose 的依赖只剩注解和Locale,就可以用同包名 shim 把上游源码完整保住。遇到平台expect时,优先去上游其他平台的源集里找现成实现,这次 web 源集里的 CLDR 表就是现成的答案

文章图片
#harmonyos#华为
Compose Multiplatform 三方库 compose-icons(Octicons)的 OpenHarmony 鸿蒙化适配实战

Octicons 适配把 Tabler 版的"数据定义类库"路径从单模式验证推进到模式覆盖验证:stroke 与 fill 两种渲染模式、16/24 双尺寸体系、414 个图标的数据量、400+ 处椭圆弧几何,同一套架构全部吃下。更重要的是,本次踩中并修复了 Tabler 没暴露的ArkUIA命令坑——这恰好证明了「shim 记录几何 → JSON 契约传输 → ArkUI 原生渲染」这条链路的可

#harmonyos#ar#华为
Compose Multiplatform 三方库 compose-icons(Octicons)的 OpenHarmony 鸿蒙化适配实战

Octicons 适配把 Tabler 版的"数据定义类库"路径从单模式验证推进到模式覆盖验证:stroke 与 fill 两种渲染模式、16/24 双尺寸体系、414 个图标的数据量、400+ 处椭圆弧几何,同一套架构全部吃下。更重要的是,本次踩中并修复了 Tabler 没暴露的ArkUIA命令坑——这恰好证明了「shim 记录几何 → JSON 契约传输 → ArkUI 原生渲染」这条链路的可

#harmonyos#ar#华为
Flutter 三方库 flutter_sharing_intent 的 OpenHarmony 鸿蒙化适配指南(Want 接收入口全实战)

v2.0.4 完整适配鸿蒙——通过拦截分享 Want → 转发给→ MethodChannel 提供冷启动+ EventChannel 提供热启动流 → Dart facade 零改动直接复用。多 key 探测文本/URL,提取文件 URI,mime 推断走扩展名映射。EntryAbility 添加 skills 让 app 出现在系统分享面板,Dart enum 与 ArkTS enum 索引对

#flutter#harmonyos#华为
Flutter 三方库 flutter_sharing_intent 的 OpenHarmony 鸿蒙化适配指南(Want 接收入口全实战)

v2.0.4 完整适配鸿蒙——通过拦截分享 Want → 转发给→ MethodChannel 提供冷启动+ EventChannel 提供热启动流 → Dart facade 零改动直接复用。多 key 探测文本/URL,提取文件 URI,mime 推断走扩展名映射。EntryAbility 添加 skills 让 app 出现在系统分享面板,Dart enum 与 ArkTS enum 索引对

#flutter#harmonyos#华为
    共 274 条
  • 1
  • 2
  • 3
  • 28
  • 请选择