一个跨平台看电视应用,提供流畅的视频观看体验!


项目简介

一个基于 React Native TVOS 和 Expo 构建的跨平台电视应用,旨在提供流畅的视频观看体验。项目包含一个用于数据服务的 Express 后端。

✨ 功能特性

  • 跨平台支持: 同时支持 Apple TV 和 Android TV。
  • 现代化前端: 使用 Expo、React Native TVOS 和 TypeScript 构建,性能卓越。
  • Expo Router: 基于文件系统的路由,使导航逻辑清晰简单。
  • 后端服务: 配套 Express 后端,用于处理数据获取、搜索和详情展示。
  • TV 优化的 UI: 专为电视遥控器交互设计的用户界面。

🛠️ 技术栈

  • 前端:
    • React Native TVOS
    • Expo (~51.0)
    • Expo Router
    • Expo AV
    • TypeScript

🚀 快速开始

环境准备

请确保您的开发环境中已安装以下软件:

  • Node.js (LTS 版本)
  • Yarn
  • Expo CLI
  • Xcode (用于 Apple TV 开发)
  • Android Studio (用于 Android TV 开发)

项目启动

接下来,在项目根目录运行前端应用:

ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line# (如果还在 backend 目录) 返回根目录cd ..
# 安装前端依赖yarn
# [首次运行或依赖更新后] 生成原生项目文件# 这会根据 app.json 中的配置修改原生代码以支持 TVyarn prebuild-tv
# 运行在 Apple TV 模拟器或真机上yarn ios-tv
# 运行在 Android TV 模拟器或真机上yarn android-tv

部署

  • 1.2.x 以上版本需配合 MoonTV 部署使用,api 地址填部MoonTV署后的访问地址。

    • 注意: 地址后面不要带 / ,不要遗漏 http:// 或者 https://
  • 如果不想依赖 MoonTV,可以使用 1.1.x 版本。

其他

  • 最低版本是 android 6.0,可用,但是不推荐
  • 如果使用 https 的后端接口无法访问,在确认服务没有问题的情况下,请检查 https 的 TLS 协议,Android 10 之后版本才支持 TLS1.3

📜 主要脚本

  • yarn start: 在手机模式下启动 Metro Bundler。
  • yarn start-tv: 在 TV 模式下启动 Metro Bundler。
  • yarn ios-tv: 在 Apple TV 上构建并运行应用。
  • yarn android-tv: 在 Android TV 上构建并运行应用。
  • yarn prebuild-tv: 为 TV 构建生成原生项目文件。
  • yarn lint: 检查代码风格。

📸 应用截图

项目地址

https://github.com/zimplexing/OrionTV/blob/master/README.md




扫码加入技术交流群,备注「开发语言-城市-昵称

(文:GitHubStore)

发表评论