50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

React Native 跨界 MR 头显!苹 果 Vision Pro 成新战场,开发门槛骤降

  • 2024-01-31
    北京
  • 本文字数:2074 字

    阅读完需:约 7 分钟

大小:978.79K时长:05:34
React Native 跨界 MR 头显!苹 果Vision Pro 成新战场,开发门槛骤降

一个新的开源项目将 React Native 引入了 Apple Vision Pro 平台,允许移动开发人员为这款混合现实头显设备开发应用。


理论上来说,现有的移动应用应该是可以迁移到 Apple Vision Pro 的 visionOS 操作系统上的。

 

Michał Pierzchała 在最近的一期 React Native 播客中估计,毕竟 visionOS 系统有多达 80-90%(甚至更多)的代码与 iOS 是相同的。Pierzchałan 是软件工程咨询公司 CallStack 的技术主管。负责该项目的 CallStack 软件工程师 Oskar Kwaśniewski 解释道,两大系统的基础都是 UIKit。

 

不过,当 CallStack 与 Rebecker Specialties 的创始人 Matt Hargett 合作为 Vision Pro 开发一个 React Native 应用时,他们发现没办法在 visionOS 上使用这个框架。因此 CallStack 决定创建一个 React Native 的分支。通过这个分支,CallStack 构建了一个新的开源树外平台,可以支持 visionOS 操作系统。它允许开发人员将应用程序移植到到 Vision Pro 头显上,并完全支持这个平台的 SDK。

 

“Apple Vision Pro 最显著的特点当然是这种沉浸式空间了,在这个空间中可以有几个并排排列的应用,”这个分支的开发者 Kwaśniewski 告诉 The New Stack。“这就是我们将为 React Native 带来的愿景,让用户可以轻松移植他们的应用,并充分利用 Apple Vision Pro 用户的虚拟空间。”

VisionOS 开发的特殊之处

我们可以将 VisionOS 看作具有三种类型空间内容的平台,这三种类型分别是:窗口、3D 体和空间。窗口是包含传统视图和控件的矩形框,并且可以包含一些 3D 内容。三维体更像是一个大立方体,可以向用户展示能够从任何角度观看的 3D 体验。空间就是剩下的所有内容。默认情况下,应用会启动到共享空间,它们并排排布,就像桌面上的多个应用一样。

窗口和三维体,来自苹果的 visionOS 页面。

 

“应用程序可以使用窗口和三维体来显示内容,并且用户可以将这些元素放到他们喜欢的任何位置上,”Apple VisionOS 网站是这样解释的。“为了获得更身临其境的体验,一个应用可以打开一个专用的完整空间,其中只会显示该应用的内容。在这个完整空间内,应用程序可以使用窗口和三维体创建无限的 3D 内容,打开通往不同世界的门户,甚至让人们完全沉浸在环境中。”

 

Apple Vision Pro 是一款混合现实或扩展现实头显,而不是虚拟现实(提供完全身临其境的体验)设备。混合现实更像是一个虚拟叠加层,它允许用户与周围环境交互。Kwaśniewski 和 Pierzchałan 在播客中分享道,这款头显允许用户使用手、声音和眼睛来导航内容,所有这些都由系统层处理,不需要开发人员编程。

 

Vision Pro 还是很难买——截至 1 月份的播客播出时,CallStack 还在等待产品发售——所以 Kwaśniewski 只能在模拟器上开发,但他表示,这个操作系统将高亮显示用户查看的位置并选择元素,然后可以通过手指动作来控制——就像点击触控板一样。

替代方案

Kwaśniewski 表示,他们的团队确实考虑了 Flutter 这个可能的选项,但最终选择了 React Native,因为后者是更成熟的框架,在 Apple App Store 和 Google Play 内发布的实际应用中所占的份额更大。他补充说,React Native 平台将允许这些开发人员将他们的移动应用扩展到 visionOS 上。

 

NativeScript 是创建 VisionPro 应用的另一种选择。它为包括 React、Angular 和 Svelte 在内的多个 JavaScript 框架提供了 VisionOS 支持,允许开发人员将 JavaScript 与苹果的 SwiftUI 结合使用。但与之相比,React Native 更容易使用、速度更快,Pierzchałan 说。

构建树外平台

Kwaśniewski 将 Vision OS 的 React Native 分支与微软 Windows 的 React Native 分支做了比较。

 

“它允许你复用自己之前用流行的 JavaScript 所编写的代码库,并运行在 macOS 和 Windows 上,我们还允许它在 visionOS 上运行,”他说。

 

他补充说,在构建 React Native visionOS 框架时,团队利用了另一个框架 SwiftUI 来弥合 React Native 和 Vision Pro 在视觉展示方面之间的差距。

 

团队发现不可能,甚至没有必要迁移所有的 React Native 代码。例如,有些 API 在 Vision Pro 上就没有意义。

 

“检索当前用户屏幕信息的 API 对于这个平台来说没有意义,因为屏幕距离我们的眼睛只有一厘米,我们无法访问用户正在查看的屏幕;但对于视觉展示来说,我们使用窗口来显示内容,”他说。 “这就是为什么大多数库的开发和维护人员需要解决一些常见问题,才能让他们的库跑在这个平台上。”

 

只有使用原生代码的库才需要迁移;根据 Kwaśniewski 一月份发布的一篇详细介绍如何迁移库的帖子来看,纯 JavaScript 库会是开箱即用的。当然,这个框架设计出来就是为了解决这方面的一些挑战的。Kwaśniewski 主动表示,希望迁移自己库的开发人员都可以向他寻求帮助。


另外,文章中提到的播客为“React Native for Apple Vision Pro and visionOS | The React Native Show Podcast”,可以直接访问这期播客的官网 https://www.callstack.com/podcasts/react-native-for-apple-vision-pro-and-visionos

 

原文链接:https://thenewstack.io/react-native-fork-supports-development-on-apple-vision-pro/

2024-01-31 13:068466

评论

发布
暂无评论
发现更多内容

HTML5 游戏开发实战 | 黑白棋

TiAmo

html html5 6 月 优质更文活动

构建系列之新一代利器Esbuild(下)

江湖修行

前端 cli 构建 #web esbuild

安全专家们看过来,易安联EnSRC第二期众测启动

权说安全

用华为云低代码Astro Zero10分钟搭建 “图书馆数据可视化大屏” 应用

软件开发 低代码 华为云

直播系统源码知识分享:解你忧愁!降低直播延迟的实现

山东布谷科技

软件开发 源码搭建 直播系统源码 直播源码

快上车,搭乘HUAWEI HiCar驶向未来

HarmonyOS SDK

HMS Core

软件测试/测试开发丨Python内置库学习笔记

测试人

Python 软件测试 io 科学计算 内置库

G1垃圾回收参数调优及MySQL虚引用造成GC时间过长分析 | 京东云技术团队

京东科技开发者

MySQL G1 GC 企业号 6 月 PK 榜

schema registry口令认证配置

Shen-Xmas

kafka Bigdata dba schema schema registry

CSS中常用的颜色格式

南城FE

CSS css3 前端 设计

图文结合带你搞懂GreatSQL体系架构

GreatSQL

greatsql greatsql社区

Redis跳跃表是如何添加元素的?

小小怪下士

Java redis 面试

MaxCompute湖仓一体近实时增量处理技术架构揭秘

阿里云大数据AI技术

sql 大数据 分布式计算 数据处理 企业号 6 月 PK 榜

2023银川市等级保护测评中心地址在哪里?有几家?

行云管家

等保 等保测评 等级测评 银川

大语言模型的开发利器langchain

程序那些事

程序那些事 AIGC ChatGPT 大语言模型

Intellij IDEA 插件开发 | 京东云技术团队

京东科技开发者

Java IntelliJ IDEA 企业号 6 月 PK 榜 插件工程

【网络安全】堡垒机对于企业的重要性你知道吗?

行云管家

云计算 运维 网络安全 堡垒机

一文搞定PCB元器件的布局布线

华秋PCB

元器件 PCB 布局 PCB设计 布线

mysql

ltc

MySQL

推荐几款可以大幅提高开发效率的vscode插件 | 京东云技术团队

京东科技开发者

Vue 前端 vscode

低代码渲染那些事

阿里技术

低代码 渲染

华为云专家出品《从零到一•Python图像处理入门》电子书

Python 华为 华为云 华为开发者大会2023

程序员用哪一种IDE写代码比较好?

没有用户名丶

【直播预告】HarmonyOS极客松赋能直播第三期:一次开发多端部署与ArkTS卡片开发

HarmonyOS开发者

HarmonyOS

从Kafka中学习高性能系统如何设计 | 京东云技术团队

京东科技开发者

云计算 kafka 高性能 企业号 6 月 PK 榜

Spring Boot配置文件加载顺序详解

2756

VLDB2023|方略:一个交互式的规则研发系统

AI Infra

程序员 AI 开发者 AI大模型 大模型时代

AIGC+任务管理|给既定目标一个“精准打击”

TE智库

人工智能 任务管理 AIGC 生成式AI

再见Navicat,dbeaver才是真香

程序员小毕

Java 数据库 程序员 后端 架构师

融云出海:TikTok 百亿美元投向东南亚,巨头将如何影响市场格局

融云 RongCloud

产品 运维 出海 市场 通讯

React Native 跨界 MR 头显!苹 果Vision Pro 成新战场,开发门槛骤降_架构/框架_Loraine Lawson_InfoQ精选文章