React-Native开发鸿蒙NEXT-video

React-Native开发鸿蒙NEXT-video

前几周的开发,基本把一个”只读型“社区开发的差不多了。帖子列表,详情,搜索都迁移实现了,但还差了一点------视频类型帖子的展示。之前开发RN社区中,对于视频的处理用的是react-native-video,这个三方组件也已经实现了鸿蒙化,部分逻辑可以直接沿用。依赖安装的过程略过不表。具体可以参考

https://gitee.com/react-native-oh-library/usage-docs/blob/master/zh-cn/react-native-video.md#https://gitee.com/link?target=https%3A%2F%2Fgithub.com%2Freact-native-oh-library%2Freact-native-video%2Freleases

之前碰到有人问说那个依赖的har包在哪,这个---这个只要把下载的tgz文件双击解压缩以下,得到的package文件夹内harmony文件夹下就有了哈。

应用之前未鸿蒙化的RN版本,react-native-video用的是2.0.0的一个上古版本,来看下接入现在鸿蒙化三方版本后后需要做哪些调整。直接附上原始代码

              <Videoref={videoPlayerRef}source={{uri: detail.videoUrl}}rate={1.0}volume={1.0}muted={false}paused={!isPlaying}//resizeMode={rotateDeg == 0?'cover':'contain'}resizeMode={videoResizeMode}playWhenInactive={false}playInBackground={false}ignoreSilentSwitch={'ignore'}progressUpdateInterval={250.0}onLoadStart={_onLoadStart}onLoad={_onLoaded}onProgress={_onProgressChanged}onSeek={_onSeek}onEnd={_onPlayEnd}onError={_onPlayError}onBuffer={_onBuffering}style={{width: '100%', height: '100%'}}/>

对照文档可以看到如下需要调整的地方,诸如onseek/rate/playWhenInactive等这些属性的不支持对基本操作影响不大(我这因为自己能做主所以就这么说了,上班的同学还得讲究下”向上管理“)。

为了处理拖拽进度,使用了react-native-silder,对接可参考

https://gitee.com/react-native-oh-library/usage-docs/blob/master/zh-cn/react-native-community-slider.md
<Sliderstyle={{ flex: 1 }}minimumTrackTintColor={xnUtils.getCustomByKey('homeColor')}maximumTrackTintColor={'rgba(255,255,255,0.3)'}thumbImage={require('../../img/icon_control_slider.png')}value={currentTime}minimumValue={0}maximumValue={Math.round(duration)}onValueChange={currentTime => {onSliderValueChanged(currentTime);}}onSlidingComplete={value => {videoPlayerRef.current &&videoPlayerRef.current.seek(value, 0);}}
/>

最后看下使用效果,同样在用爱发电搞这项目的小伙伴反馈目前后台视频上传的问题一时半会还没解决,这里是伪造了数据来验证的,请无视视频播放功能以外的异常情况。。。。。。(西瓜视频上传有问题,视频效果可移步公众号文章查看)

待后台修复后还需调整下UI,对下接口字段的处理。至此,社区已经可以支持富文本显示,图集浏览,视频播放,基本满足主要业务需要。接下去将开始处理bundle的远程更新。


不经常在线,有问题可在微信公众号或者掘金社区私信留言
更多内容可关注
我的公众号悬空八只脚
作者:悬空八只脚
链接:https://juejin.cn/post/7484471047720304674
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/905008.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React-Native开发鸿蒙NEXT-cookie设置

React-Native开发鸿蒙NEXT-cookie设置 应用有个积分商城,做一些积分兑换的业务,就一个基于react-native-webview开发的页面,在页面加载的时候通过js注入来设置cookie带入用户信息。 早先应甲方要求web网站关闭了,现在又要继续运行。于是就把web服务启动了,然后发现应用里积…

第六天

单词 以下是今天需学习的35个单词复习,同时前几天的单词阅读 理解文章大意,记录不认识的单词。今天这个阅读非常应当下的情景。 How to Teach Yourself Anything in Less than Three Months 如何在3个月内学习任何一件事(一) Self-education can be wonderful and frustrat…

React Native开发鸿蒙Next---富文本浏览

React Native开发鸿蒙Next---富文本浏览 最近在继续开发App剩余的社区功能。地铁的社区相对较为特殊,只有公告/政策规章/操作指南等资讯阅读功能,无法进行交互。对于原先的社区RN,除了移植适配鸿蒙,还需要做大量的功能屏蔽等改造。新的社区后台大量采用富文本进行内容编辑,…

17.指针

正如您所知道的,每一个变量都有一个内存位置,每一个内存位置都定义了可使用 & 运算符访问的地址,它表示了在内存中的一个地址。 请看下面的实例,它将输出定义的变量地址:#include <stdio.h>int main(){int var_runoob = 10;int *p; //定义指针变量p = &var…

3.24 学习记录

实现了学习记录APP的登录注册功能

2025西安交大集训Day2:DFS,BFS记忆化搜索,迭代加深搜索,二分搜索

2025西安交大集训Day2:DFS,BFS记忆化搜索,迭代加深搜索,二分搜索

掌握 Postman:高级 GET 请求技术与响应分析

欢迎阅读本指南,它将详细介绍如何在 Postman 中发送 GET 请求并理解 API 响应。对于希望提升 API 测试和开发能力的开发者来说,这是不可或缺的技能。 Postman 对开发者的重要性Postman 是 API 开发和测试中不可或缺的工具。它不仅简化了发送请求和分析响应的过程,还提供了一…

带你一起来熟悉linux文件权限体系

了解 Linux 文件权限对于有效且可靠的linux相关系统管理和安全管理至关重要。通过本文中概述的概念并加以实践,您将可以轻松浏览文件权限并确保 Linux 系统的完整,可靠和安全。下面将从权限的格式,常用设置,修改,解析等方面分别说明。 A).Linux 文件权限由三个权限部分组成…

OP100自动安装背板常见问题

1.运行过程中切手动,回原灯一直闪烁,始终无法执行完成 OP50自动安装座板 OP100自动安装背板 OP280自动安装上盖 这几个工站因为有记忆功能,会记住当前步序以及夹爪/吸盘上有没有物体,如果运行中切换手动,并动了气缸,会导致逻辑错乱,类似升降器的SUB40,遇到这种情况: 1…

20244217 2024-2025-2 《Python程序设计》实验一报告

学号 2024-2025-2 《Python程序设计》实验一报告 课程:《Python程序设计》 班级: 2442 姓名: 胡峻豪 学号:20244217 实验教师:王志强 实验日期:2025年3月24日 必修/选修: 公选课 1.实验内容 1.熟悉Python开发环境。首先在官网下载并安装PyCharm专业版,安装完成后打开软…

软件工程日报15

Android studio 实现连接远程mysql数据库,并将数据展示出来,由于之前没接触过,全靠按照博客上的指导和ai生成的代码,之后在学习一下 以下是效果