第 4-2 课:开发一个 Flutter TV 应用
之前一直在讲 Flutter 在移动端的应用尝试,今天这节内容,我们将拓展到 TV 应用的开发上来。
我们知道目前的智能电视和机顶盒都是基于 Android 系统的,所以一般的 TV 应用开发都是采用 Android 原生进行开发,Google 对 Android TV 的开发也进行了一些规范和库的制定。当然也有的是采用的 B/S 架构进行设计的。这里我们将尝试 Flutter 开发 TV 应用。
这里说明一下,选择 Flutter 开发 TV 应用这个项目既是为了我们实践的练习,也是为了知识的拓展。最终这个应用写出来了,效果也还可以,体验流畅,自动适配,不过开发成本还是挺高的,按键监听、焦点处理和焦点框处理比较麻烦,由于 Google 官方并没有推出 Flutter TV 应用的 SDK,所以建议大家在正经的开发业务中暂时不要用 Flutter 编写 TV 应用,而是建议使用原生 leanback 等库进行开发或者 B/S 结构开发。
接下来,就分享下其中的技术点。本文将主要介绍:
- Flutter TV 应用开发主要难点
- Flutter TV 应用开发按键监听
- Flutter TV 应用开发焦点处理
- Flutter TV 应用开发焦点框效果处理
在进行讲解前,我们先看下 Flutter TV 开发实现的效果图:
<
第 4-2 课:开发一个 Flutter TV 应用相关推荐
- flutter 获取定位_从头开发一个Flutter插件(二)高德地图定位插件
在上一篇文章从头开发一个Flutter插件(一)开发流程里具体介绍了flutter插件的具体开发流程,从创建项目到发布.接下来将会为Flutter天气项目开发一个基于高德定位sdk的flutter定位 ...
- Flutter TV 应用的开发尝试 | 开发者说·DTalk
本文原作者: 谭东,原文发布于公众号谭东 jay: https://mp.weixin.qq.com/s/GI5g-zdeRwc8_E2zPN8pMA 我们之前一直在做 Flutter 在移动端的应用 ...
- 如何使用Flutter+SpringBoot+Mysql开发一个简易的抽奖APP(Android)教学
如果你需要项目资源,欢迎来到我的个人博客:https://brath.top/2023/02/24/%E3%80%90Flutter&SpringBoot%E3%80%91%E5%A6%82% ...
- 第七课 技术小白如何开发一个DAPP区块链应用(以宠物商店为例)
1. 文章摘要 [本文目标] 通过逐步的指导和截图举证,一步步带领一个技术小白完成一个宠物商店DAPP应用的开发和部署. [环境前置条件] 参考<第一课 如何在WINDOWS环境下搭建以太坊开发 ...
- flutter笔记4:使用material原生控件开发一个APP
接着上一篇,我们做一个这样的APP: 开始之前,我发现了一个好玩的东西,每次我们在终端中输入命令: flutter run 终端里会有这个东西: 按照上图所示,我们的进入这个网页看看是个啥: 好高大上 ...
- 推荐一个Flutter项目(已开源)
什么是Flutter? 2018年2月27日,在2018世界移动大会上,Google发布了Flutter的第一个Beta版本.Flutter是Google用以帮助开发者在iOS和Android两个平台 ...
- Flutter初体验(二)—— 创建第一个Flutter APP
Flutter初体验(二)--- 创建第一个Flutter APP 在第一篇文章 Flutter初体验(一)---Mac 安装配置,学习了配置 Flutter 开发环境,并运行了Demo项目,本篇根据 ...
- 【Flutter】Flutter 混合开发 ( 混合开发中 Flutter 的 热重启 / 热加载 )
文章目录 前言 一.混合开发中启用 Flutter 的 热重启 / 热加载 二.混合开发中 Flutter 的 热重启 / 热加载 命令测试 三.指定混合应用连接的设备 四.相关资源 前言 上一篇博客 ...
- 【Flutter】Flutter 混合开发 ( 简介 | Flutter 混合开发集成步骤 | 创建 Flutter Module )
文章目录 一.Flutter 混合开发简介 二.Flutter 混合开发集成步骤 三.创建 Flutter Module 1.使用命令行创建 Flutter Module 项目 ( 仅做参考 ) 2. ...
最新文章
- OKHTTP3源码和设计模式(下篇)
- elementui下拉框选择图片_Element UI系列:Select下拉框实现默认选择
- python第二阶段第四天 装饰器和匿名函数
- welcome-file-list标签的控制作用以及在springmvc中此标签的的配置方式
- linux识别设备插槽,你如何确定linux计算机的CPU插槽类型?
- 周末巨献:100+诡异的数据集,20万Eclipse Bug、死囚遗言
- html5swf小游戏源码,亲测可用120个H5小游戏实例源码
- 搜索引擎的排序技术综述
- Scrum板与Kanban如何抉择?adpoqqrql板与按照zbocyo
- python复数什么意思_python 复数是什么意思
- 用Python做股市数据分析(二)
- IGV变异可视化设置要点
- Linux配置8021.q vlan实践篇
- ctf比赛的方向及内容
- 获取 个位数 十位数 百位数 千位数
- Kotlin - 改良构建者模式
- 【网络】什么是最大传输单元 ( MTU)|MTU 优化
- 2021年中国网页游戏市场实际销售收入为60.30亿元,同比减少20.74%[图]
- hiper – web_Web设计行业分析–专业人士与业余者[信息图]
- 修改惠普(HP)LaserJet 1020打印机驱动增加打印长度
热门文章
- 第一期挖矿大赛进展如何?——Nervos 双周报第十二期
- Flask-admin Model View字段介绍
- js 获取某一年第多少天是周几
- L1-6 福到了 (15 分)——2018
- HTML5图片与文本对齐方式
- 什么是soft matting方法_宜家的娃娃为什么这么”丑“
- Leetcode_584. 寻找用户推荐人
- matlab函数im2bw_im2bw(matlab中im2bw用法)
- android触屏压力方案,如何捕捉压力和面积超过触摸屏android
- 教你如何升级app适配iOS 7