网易首页 > 网易号 > 正文 申请入驻

一份Java代码,苹果表和安卓表都能跑

0
分享至

周五,Codename One 的开发团队在博客里放出一篇文章,宣告这个跨平台框架正式把手表开发纳入了版图。文章不长,却把 watchOS 和 Wear OS 两种完全不同的可穿戴系统一并讲清楚了——重点不是教程,而是那一小段让两边都能跑的 Java 或 Kotlin 代码,到底怎么写、怎么跑通的。

不少开发者对 Codename One 还比较陌生。它是个开源框架,只用一个 Java 或 Kotlin 的代码库,就能编译出原生的 iOS、Android、桌面和 Web 应用。也就是说,你写一份业务逻辑,它帮你生成为每个平台的真正 native 部件,而不是套一个壳。这次更新的手表支持,也延续了同样的思路:复用已有的手机端代码,只针对手表屏幕做有限的适配,而不是从零重写一个表盘应用。


为什么会有人在乎一个手表 API?苹果的立场其实很明确,它把手表编程当作与手机、桌面完全割裂的一门手艺——不同的 API,不同的交互逻辑,连最基础的 UI 隐喻都没法复刻。比如,你在 iPhone 上随手就能调出的文本输入框,在 watchOS 里压根不存在;网页浏览控件就更别想了。所以,当很多知名应用干脆放弃手表界面时,一个很自然的问题就冒了出来:在这样的限制下,费劲搞一个手表 API,图什么?

Codename One 团队给出的答案是:复用。别看适配一只手表屏幕只需要不多的界面改动,但因为要学一整套陌生的 API,真动手做起来成本并不低,于是大量 app 直接选择“没有手表 UI”。而 Codename One 的做法是,继续让你用同一份 Java 或 Kotlin 代码库干活,手机端怎么驱动界面,手表端就怎么驱动,只是按屏幕尺寸和交互特性,由你自己决定每一屏到底展示哪些内容。工作量被压缩在一小块条件判断和布局调整上,而不是整套重写。

如果说理念层面是对复用价值的坚持,那么 watchOS 这一端的工程实现就更有意思了。苹果自家的 watchOS 完全看不到 UIKit 的视图层级,也没有 OpenGL ES,更没有 Metal——iOS 移植所依赖的所有渲染路径,在这里一概走不通。所以,Codename One 的 watchOS 版本专门做一个基于 Core Graphics 的渲染后端,再另起一个手表应用 target,把整个运行时和被 ParparVM 翻译过的应用代码,塞进一个 SwiftUI 的壳里运行。无论是矩形、线条、多边形、图片、渐变,还是 Core Text 绘制的字符串,以及裁剪、变换、alpha 遮罩等操作,所有绘图指令最终都交由 Core Graphics 来画。这么一来,手表屏幕上出现的并不是一套简化的“假”组件,而是完整的 Codename One UI 绘制结果。

团队还特意贴出了一张来自测试框架的截图。那个测试框架原本根本不是为手表设计的,界面上竟然还带有一个文本输入框——因为它是 Codename One 原生的文本组件,所以照样能在手表上正常渲染,甚至能“看起来能用”,直到你真想在上面打字,才会意识到手表上根本不该出现这玩意。这件事恰好提醒开发者:组件虽然能渲染出来,不代表它适合出现在手表上。真正为手表构建的界面,会主动收起文本输入框,改用旋转表冠或点击来获取输入。本质上,你还是需要为手表重新设计每一屏的体验,而框架只是保证你的代码无需为两个平台各写一份。

在苹果这边,手表 App 的起点是一个自动生成的 SwiftUI @main 壳,它负责承载 Codename One 的每一帧,并把旋转表冠和触摸事件转发给框架内部的运行时。编译到真机上时,手表这部分 slice 的目标架构是 arm64_32。如果你选用默认的捆绑发行方式,这个手表 App 会嵌入到你的 iOS 主应用里,用户在 iPhone 上一装,手表端就同步装好;如果你想单独发布,也可以直接构建一个纯手表产品。架构上,团队给出的示意图很清晰:CN.isWatch() 这个判断在苹果手表和安卓 Wear OS 上都会返回 true,所以无论哪个平台,你首先会因为屏幕尺寸而要做界面适配;一旦过了这个检查,接下来的差异就只来自平台本身,而不是这个条件分支。

最后,官方还特别提了一句:单独维护一个手表端的根结构,目的是让应用体积足够小。手表的运存和 CPU 预算远低于手机,能少跑一行代码,就少跑一行。所以,业务逻辑层面依旧共享同一份代码,但最终打进手表包里的,只有跟你筛选出来的手表视图强相关的部分。这种“隔离根”的设计,让复用不是嘴上说说,而是真正控制了手表的资源开销。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
飞机最后面仓位的空姐视角,难得一见

飞机最后面仓位的空姐视角,难得一见

微微热评
2026-06-30 12:40:16
很少看到日本人这么愤怒:强烈不满,坚决抗议,即将进行反制!

很少看到日本人这么愤怒:强烈不满,坚决抗议,即将进行反制!

阿龙聊军事
2026-06-30 12:07:29
韩红基金会被扒多次对外投资,几个亿善款闲置,网友要求公开说明

韩红基金会被扒多次对外投资,几个亿善款闲置,网友要求公开说明

萌神木木
2026-06-29 18:33:42
谎话连篇、假慈善贪污上亿、高调炫富,韩红身上标签哪些才是真的

谎话连篇、假慈善贪污上亿、高调炫富,韩红身上标签哪些才是真的

不似少年游
2026-06-29 16:44:05
无人机攻防正酣,乌克兰打算收手?

无人机攻防正酣,乌克兰打算收手?

新民晚报
2026-06-30 12:53:16
1换1!送走一个玻璃人,再来一个玻璃人,勇士真要这么玩?

1换1!送走一个玻璃人,再来一个玻璃人,勇士真要这么玩?

球毛鬼胎
2026-06-30 17:00:26
刘满仓,被判无期

刘满仓,被判无期

新京报
2026-06-30 17:10:27
法拉利被当滑梯后续:家长只愿赔五百,警方介入,车主硬气维权

法拉利被当滑梯后续:家长只愿赔五百,警方介入,车主硬气维权

史料布籍
2026-06-29 18:20:42
项立刚评冯小刚:饭局跳舞事件后我就不看他电影了,太恶心了

项立刚评冯小刚:饭局跳舞事件后我就不看他电影了,太恶心了

映射生活的身影
2026-06-29 16:37:52
楼上泼我家3年脏水,他儿考飞行员,我带15份录音证明送航司纪检

楼上泼我家3年脏水,他儿考飞行员,我带15份录音证明送航司纪检

千秋文化
2026-06-27 19:40:09
堪称吃绝户!新婚一年离婚分割财产,上海男子分得女方6800多万​

堪称吃绝户!新婚一年离婚分割财产,上海男子分得女方6800多万​

火山詩话
2026-06-30 09:01:21
67岁王朔晚年现状:独居北京,疾病缠身,每天要吃一根哈根达斯

67岁王朔晚年现状:独居北京,疾病缠身,每天要吃一根哈根达斯

揽星河的笔记
2026-06-29 14:37:26
23岁女子想再睡一次情夫,情夫怕妻子得知奸情,2010年将女子杀死

23岁女子想再睡一次情夫,情夫怕妻子得知奸情,2010年将女子杀死

情感艺术家
2026-06-30 06:50:11
杭州见!学生党技术狂欢来袭,阿里硬核少年技术节5.0首次开放报名

杭州见!学生党技术狂欢来袭,阿里硬核少年技术节5.0首次开放报名

机器之心Pro
2026-06-29 20:45:47
iPhone18 Pro遭泄密!照片、零部件、供应商信息被挂暗网,此前刚把印度推成生产基地

iPhone18 Pro遭泄密!照片、零部件、供应商信息被挂暗网,此前刚把印度推成生产基地

红星新闻
2026-06-30 14:19:20
原新华社记者唐师曾,现病情危重处于“生命的边缘”

原新华社记者唐师曾,现病情危重处于“生命的边缘”

转型Media人
2026-06-29 23:12:15
悲情?荷兰近3届世界杯均在点球战被淘汰出局!92年12次参赛仍0冠

悲情?荷兰近3届世界杯均在点球战被淘汰出局!92年12次参赛仍0冠

我爱英超
2026-06-30 11:58:50
明天三场世界杯大胆预测:法国挪威获胜,厄瓜多尔有望掀翻东道主

明天三场世界杯大胆预测:法国挪威获胜,厄瓜多尔有望掀翻东道主

宝哥精彩赛事
2026-06-30 14:48:25
海尔、美的、格力回应欧洲空调需求激增

海尔、美的、格力回应欧洲空调需求激增

中国能源网
2026-06-30 09:44:04
中国男篮决战日本队,最强首发五人曝光,郭士强重大调整

中国男篮决战日本队,最强首发五人曝光,郭士强重大调整

宗介说体育
2026-06-30 15:53:56
2026-06-30 18:20:49
碳基打工人
碳基打工人
坐标北京,靠咖啡续命,靠小红书下饭的普通人类。
260文章数 49关注度
往期回顾 全部

科技要闻

iPhone18 Pro遭泄密!印度代工商惹祸

头条要闻

无人机攻防正酣 乌克兰却在此时给俄罗斯出了个难题

头条要闻

无人机攻防正酣 乌克兰却在此时给俄罗斯出了个难题

体育要闻

大热倒灶压力给到法国 王楚揭法国队隐患

娱乐要闻

韩红称要退出公益,多位名人挽留

财经要闻

韩国万亿"芯"基建:存储能否成AI时代油田

汽车要闻

谁懂啊家人们!爹味和班味一点都没,这台底盘最硬国产大猎装太上头!

态度原创

时尚
艺术
数码
公开课
军事航空

“复古波点”又流行回来了!夏天简单穿就很时髦

艺术要闻

乔治·莫兰迪简洁的静物画,色彩看着太舒服了!

数码要闻

达摩鲨推出M3 Ultra大手鼠标:nRF54L15 + PAW3950,269元

公开课

李玫瑾:为什么性格比能力更重要?

军事要闻

以色列防长:穆杰塔巴已被列入死亡名单

无障碍浏览 进入关怀版