当前位置: 首页 > news >正文

LG 选择 Flutter 来增强其智能电视操作系统 webOS

可以这个话题会让大多数人困惑,2024 年了为什么还会冒出 webOS 这种老古董?然后 LG 为什么选择 webOS ?现在为什么又选择 Flutter ?

其实早在 Google I/O 发布 Flutter 3.22 版本的时候,就提到了 LG 选择 Flutter 来增强其智能电视操作系统 webOS,并预计在 2025 年发布。

而在 2024/7/15 的时候,LG 官方也正式官宣:“New and Successful Experiment of webOS with Flutter for Better Performance and Playful Experience” 。

https://webostv.developer.lge.com/news/2024-07-15-new-and-successful-experiment-of-webos-with-flutter

那么什么是 webOS ?它为什么又是一个 TV 的 OS

WebOS 顾名思义是 Web 操作系统的缩写,是 LG 独家拥有的基于 Linux 的操作系统,主要集成到他们的智能电视系统中,所以它是属于基于 Linux 内核的多任务智能电视操作系统

但是其实它并不是 LG 发起,WebOS 最初由 Palm 于 2009 年作为移动操作系统推出,最初在多款 Palm 和 HP 智能手机中投入使用,但是众所周知,它凉了,于是 2013 年,LG 从 HP 收购了 webOS,导致 HP 决定将 webOS 开源

后续,在 LG 的主导下,WebOS 经过进一步修改,转变为智能电视操作系统,于是 WebOS TV 就诞生了,此后 LG 的 TV 基本路线定为 webOS ,在应用层面,WebOS TV 以基于 Web 的技术为基础。

作为 2024 年仅剩在 TV 领域还能“孤身”抗衡 Android TV 的产品,其存在的地位主要还是依托于 LG 本身的市场占有,WitDisplay消息,LG 2023 年在全球 OLED 电视市场以 53% 的占有率排名第一,LG 电子已经连续 11 年在 OLED 电视市场排名第一,而在全球 TV 的本身占有率上, LG 也占据了一席之地:

注意,这里的第一仅是 OLED 市场。

例如在 webOS 上, LG 的 Magic Remote 可以让你感觉就像在 Mac 或 PC 上使用鼠标一样使用遥控,这算是 LG TV 的特色之一,当然,也是由于 webOS ,目前 OS 也缺乏对侧载应用的支持。

其实 LG 在 2021 年就开始重新准备调整 TV 的内置软件,主要是希望改善应用启动和运行时的性能,在原本的场景下,webOS 下的大多数 App 都是使用 React 开发,LG 的开发团队对于 React 的开发效率十分满意,但是在在启动时间、内存消耗和响应能力的进一步优化出现了阻碍。

尽管在经过大量复杂的优化后,产品达到了足够好的性能基准,但 LG 开始寻求另外可以实现目的且成本更低的技术。

而此时,一位工程师建议用 Flutter 重写 LG 上的日语电子节目指南 (EPG),而完成后的第一个 Flutter 原型轻松超越了之前 LG 团队的目标基准,无需任何优化

在使用 Flutter 重写的版本,启动速度比原始应用快两倍,运行时内存消耗更少,使用起来更灵敏,而目前这款 Flutter 应用目前已安装在日销售的 2024 台 webOS 电视中。

随着日语 EPG 重写成功, LG 决定使用 Flutter 重写更多应用,包括用户在使用 LG 电视时与之交互的主要软件。

所以 LG 最终决定在 2025 年推出的全球电视中全面引入 Flutter 应用,并在 2026 年推出更多 Flutter 应用,由 Flutter 驱动的 webOS 版本也将通过 webOS Re:New 程序在之前的型号上运行。

总的来说,这将使 Flutter 进入全球消费者家庭中数千万台 LG 电视。

此外, LG 希望发布工具来帮助所有 Flutter 开发人员参与到 LG 电视开发里,例如:通过 Flutter 将高性能休闲游戏直接带入 LG 电视,例如采用 Flutter 的 GameToolkit 或者 Flame 开发游戏,如果以后支持 Impeller ,也许还会有 3D 支持。

如果对于这个感兴趣的,可以看看 LG 目前还在举办一场的黑客马拉松(一等奖 10 万美元):https://weboshackathon.lge.com/,https://webostv.developer.lge.com/develop/flutter/how-to-build-flutter-app-for-webos,目前需要使用 Flutter webOS CLI 和 Plugins 去构建 webOS TV 得 App,不过目前只有与 LG Electronics 签署了保密协议的开发人员才能下载 Flutter webOS SDK(CLI、插件、指南等)。

总的来说,LG 是 Flutter 在 TV 领域的一次新的尝试,并且它是在脱离了 Android 平台的场景下实现的支持,虽然 webOS 并不是什么流行的系统,但是这也体现出了 Flutter 的特点:可以用较低的成本实现较好性能的跨平台。

相关文章:

LG 选择 Flutter 来增强其智能电视操作系统 webOS

可以这个话题会让大多数人困惑,2024 年了为什么还会冒出 webOS 这种老古董?然后 LG 为什么选择 webOS ?现在为什么又选择 Flutter ? 其实早在 Google I/O 发布 Flutter 3.22 版本的时候,就提到了 LG 选择 Flutter 来增…...

[ACM独立出版] 2024年虚拟现实、图像和信号处理国际学术会议(VRISP 2024,8月2日-4)

2024年虚拟现实、图像和信号处理国际学术会议(VRISP 2024)将于2024年8月2-4日在中国厦门召开。 VRISP 2024将围绕“虚拟现实、图像和信号处理”的最新研究领域,为来自国内外高等院校、科学研究所、企事业单位的专家、教授、学者、工程师等提供…...

ASP.NET Core中创建中间件的几种方式

前言 今天我们一起来盘点一下在ASP.NET Core应用程序中添加和创建中间件常见的四种方式。 中间件介绍 ASP.NET Core中间件(Middleware)是用于处理HTTP请求和响应的组件,它们被安排在请求处理管道中,并按顺序执行。中间件的设计是为…...

Atcoder ABC351 A-E 题解

A: 打卡题 题目描述 一中队和二中队正在进行一场棒球比赛&#xff0c;一中队是第一棒。 目前&#xff0c;比赛已进行到第九局上半&#xff0c;第九局下半即将开始。 一中队在 第i局 (1 < i < 9) 上半场得到了 Ai 分&#xff0c;二中队在 第j局 (1 < j < 8) 下…...

【终极指南】从零开始征服机器学习:初学者的黄金路线图

踏入机器学习的世界&#xff0c;对许多初学者而言&#xff0c;无疑是一场既兴奋又略带忐忑的冒险。尤其对于那些非数学或计算机专业背景的同学&#xff0c;或是已经在职场打拼的朋友们&#xff0c;寻找一条适合自己的入门路径&#xff0c;显得尤为重要。鉴于此&#xff0c;本文…...

MongoDB自学笔记(三)

一、前文回顾 上一篇文章中我们学习了更新操作&#xff0c;以及讲解了部分的更新操作符&#xff0c;今天我们继续学习剩余的更新操作符。 二、更新操作符 1、$rename 语法&#xff1a;{ $rename: { < field1 >: < newName1 >, < field2 >: < newName2…...

编程中的智慧之设计模式三

深入探索设计模式&#xff1a;实际应用和优化策略 在前两篇文章中&#xff0c;我们详细探讨了创建型模式、结构型模式、行为模式和架构模式的基本概念及其在Java中的实现。在本文中&#xff0c;我们将进一步探讨如何在实际项目中应用和优化这些模式&#xff0c;尤其是如何在大…...

《YOLOv10改进实战专栏》专栏介绍 专栏目录

《YOLOv10改进实战专栏》介绍及目录 YOLOv10官方仓库地址 专栏地址&#xff1a;点击跳转 专栏导航如下&#xff1a; &#x1f380;基础入门篇&#x1f380; 万字长文&#xff0c;小白新手怎么开始做YOLO实验&#xff0c;从零开始教&#xff01;整体思路在这里&#xff0c;科研指…...

Python酷库之旅-第三方库Pandas(030)

目录 一、用法精讲 79、pandas.Series.dtype属性 79-1、语法 79-2、参数 79-3、功能 79-4、返回值 79-5、说明 79-6、用法 79-6-1、数据准备 79-6-2、代码示例 79-6-3、结果输出 80、pandas.Series.shape属性 80-1、语法 80-2、参数 80-3、功能 80-4、返回值 …...

神经网络中的激活函数举例,它们各自的特点,以及哪个激活函数效果更好,为什么

sigmoid&#xff1a; \(\sigma(x)1/(1e^{-x})\)&#xff1b; 优&#xff1a;将数值压缩到 0 1&#xff0c;导数为 \(\sigma(x)(1-\sigma(x))\) 好算。劣&#xff1a;输出均值非0&#xff08;0.5&#xff09;&#xff0c;梯度消失&#xff08;Gradient vanishing&#xff09;每次…...

【树莓派3B+】控制引脚输出高低电平

前言一、安装RPI.GPIO库二、编写简单的输出高低电平的程序三、运行程序总结 前言 首先检查一下自己的板子有没有带库 我这个是有的。 ok&#xff0c;正式进入步骤 一、安装RPI.GPIO库 如果还没有安装RPi.GPIO库&#xff0c;可以通过以下命令在树莓派上安装&#xff1a; p…...

【Redis7】高阶篇

1 Redis单线程 VS 多线程(入门篇) 1.1 面试题 redis到底是单线程还是多线程&#xff1f; IO多路复用听说过吗&#xff1f; redis为什么快&#xff1f; 1.2 Redis为什么选择单线程&#xff1f; 1.2.1 是什么 这种问法其实并不严谨&#xff0c;为啥这么说呢? Redis的版本…...

在学习使用LabVIEW的过程中,需要注意哪些问题?

在学习使用LabVIEW的过程中&#xff0c;需要注意以下问题&#xff1a; 1. 基础知识 图形化编程思维&#xff1a; LabVIEW采用图形化编程方式&#xff0c;与传统的文本编程语言有很大不同&#xff0c;需要适应这种新的编程思维方式。数据流概念&#xff1a; 理解LabVIEW的核心数…...

网络编程-TCP/IP

网络概述 网络采用分而治之的方法设计&#xff0c;将网络的功能划分为不同的模块&#xff0c;以分层的形式有机组合在一起。 每层实现不同的功能&#xff0c;其内部实现方法对外部其他层次来说是透明的。每层向上层提供服务&#xff0c;同时使用下层提供的服务 网络体系结构…...

php在服务器上部署可视化运维工具详细列表

如果你的项目很小&#xff0c;可以用宝塔。但对于并发大的服务器管理&#xff0c;选择适合的工具非常重要。 目录 以下是一些免费且适合高并发管理的服务器管理工具推荐&#xff1a; 1Panel&#xff1a; Portainer&#xff1a; Webmin&#xff1a; Cockpit&#xff1a; …...

Linux中的文件夹作用

在Linux系统中&#xff0c;每个目录都有其特定的用途&#xff0c;下面我用大白话来解释一下各个主要目录的作用&#xff1a; / (根目录)&#xff1a;这是Linux文件系统的起点&#xff0c;所有其他目录都是从这里延伸出去的。你可以把它想象成你家里的门厅&#xff0c;所有房间的…...

【C++】C++中的assign函数详解

目录 一.assign函数是什么 二.assign函数怎么用 一.assign函数是什么 在C中&#xff0c; assign 是 std::string 类的一个成员函数&#xff0c;用于给字符串对象赋值&#xff0c;可以替换字符串对象中的内容为另一个字符串或字符串的一部分。 std::string 的 assign 函…...

Hadoop3:MR程序的数据倾斜问题处理

一、数据倾斜 什么是数据倾斜&#xff1f; 学过Redis集群的都知道数据倾斜这个问题。 就是大量数据&#xff0c;分配不均匀的现象。 二、MR数据倾斜 1、怎么判断出现数据倾斜&#xff1f; 数据频率倾斜——某一个区域的数据量要远远大于其他区域。 数据大小倾斜——部分记…...

Mojo 编程语言简介

Mojo 是一种新兴的编程语言&#xff0c;旨在结合 Python 的易用性与 C 的高性能&#xff0c;特别是面向高性能计算、机器学习和系统编程等领域。Mojo 的设计目标是提供一种既具备高级语言灵活性&#xff0c;又能够高效运行的编程工具。 主要特性 高性能&#xff1a;通过高级编…...

【有效验证】解决SQLyog连接MYSQL的错误 1251 - Client does not support

目录 一、原因分析&#xff1a; 二、进入到mysql 三、查看当前加密方式 四、更改加密方式 五、查看是否成功 前言&#xff1a;使用一个开源软件使用sqlyog、navcat都报1251错误&#xff0c;网上都是提示升级客户端&#xff0c;还有一种就是修改mysql配置。本文就是修改配置…...

Keka for Mac v1.4.3 中文下载 解压/压缩工具

Mac分享吧 文章目录 效果一、下载软件二、开始安装1、双击运行软件&#xff0c;将其从左侧拖入右侧文件夹中&#xff0c;等待安装完毕2、应用程序显示软件图标&#xff0c;表示安装成功 三、运行测试1、打开软件2、文件访问权限修改3、访达扩展 安装完成&#xff01;&#xff…...

springboot3.2 RedisCacheManager配置

1、启用并配置 添加 EnableCaching 注解 并配置 RedisCacheManager package config;import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.annotation.PropertyAccessor; import c…...

IP地址与MAC地址区别

MAC地址和IP地址是现代计算机网络中两个非常重要的概念&#xff0c;它们各自承担着不同的角色和功能。 MAC地址&#xff08;Media Access Control Address&#xff09; 一种物理地址&#xff0c;它是烧录在网卡或接口上的&#xff0c;具有全球唯一性&#xff0c;一般不能被改…...

Linux chmod 命令简介

在Linux中&#xff0c;chmod 命令用于改变文件或文件夹的访问权限。要改变一个文件夹及其内部所有文件和子文件夹的权限&#xff0c;您可以使用递归选项 -R。以下是一些常用的 chmod 命令示例&#xff1a; 给所有用户读、写和执行权限&#xff1a; chmod -R 777 /path/to/direc…...

【LeetCode】删除排序链表中的重复元素 II

目录 一、题目二、解法完整代码 一、题目 给定一个已排序的链表的头 head &#xff0c; 删除原始链表中所有重复数字的节点&#xff0c;只留下不同的数字 。返回 已排序的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,3,4,4,5] 输出&#xff1a;[1,2,5] 示例 …...

Pandas使用 `iloc` 和 `loc` 常见用法汇总

文章目录 df.iloc 常见用法1. 获取特定行2. 获取特定列3. 获取特定的行和列4. 获取行切片5. 获取列切片6. 获取特定的行和列切片 df.loc 常见用法1. 获取特定行2. 获取特定列3. 获取特定的行和列4. 获取行切片5. 获取列切片6. 获取特定的行和列切片 示例代码 df.iloc 和 df.lo…...

【linux服务器】大语言模型实战教程:LLMS大模型快速部署到个人服务器

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引言 说到大语言模型相信大家都不会陌生&#xff0c;大型语言模型(LLMs)是人工智能文本处理的主要类型,也现在最流行的人工智能…...

Windows 32 汇编笔记(二):使用 MASM

一、Win32 汇编源程序的结构 ; Hello.asm ; 使用 Win32 ASM 写的 Hello, world 程序 ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>…...

手机和电脑通过TCP传输(一)

一.工具 手机端&#xff1a;网络调试精灵 电脑端&#xff1a;野火网络调试助手 在开始通信之前&#xff0c;千万要查看一下电脑的防火墙是否关闭&#xff0c;否则可能会无法通信 在开始通信之前&#xff0c;千万要查看一下电脑的防火墙是否关闭&#xff0c;否则可能会无法通信…...

Sentinel规则持久化Push模式两种实现方式

文章目录 sentinel持久化push推模式微服务端的实现具体实现源码分析读数据源写数据源的实现 微服务端解析读数据源流程 修改源码的实现官方demo修改源码实现配置类flowauthoritydegreadparamsystemgateway修改源码 测试补充 前置知识 pull模式 sentinel持久化push推模式 pull拉…...