当前位置:首页 > uni-app

uniapp横屏直播

2026-02-06 13:59:12uni-app

uniapp实现横屏直播的方法

在uniapp中实现横屏直播需要调整页面方向和播放器设置。以下是具体实现步骤:

调整页面横屏显示

修改pages.json配置文件,在对应页面的style中添加横屏设置:

{
  "pages": [
    {
      "path": "pages/live/live",
      "style": {
        "pageOrientation": "landscape",
        "navigationBarTitleText": "横屏直播"
      }
    }
  ]
}

使用直播组件

推荐使用video组件实现直播播放,设置全屏和横屏属性:

<template>
  <view class="live-container">
    <video 
      id="liveVideo"
      src="直播流地址"
      controls
      autoplay
      style="width:100%;height:100vh;"
      :enable-progress-gesture="false"
      :show-fullscreen-btn="false"
      :show-center-play-btn="false"
    ></video>
  </view>
</template>

处理横屏样式

添加CSS确保全屏显示:

uniapp横屏直播

.live-container {
  width: 100vh;
  height: 100vw;
  transform: rotate(90deg);
  transform-origin: 0 0;
  position: absolute;
  top: 100%;
  left: 0;
}

Android/iOS适配

App.vueonLaunch中添加设备方向锁定代码:

// #ifdef APP-PLUS
plus.screen.lockOrientation("landscape-primary");
// #endif

直播流处理

对接常见直播协议:

uniapp横屏直播

  • RTMP流:适合低延迟场景
  • HLS流:兼容性更好
  • FLV流:网页端常用

示例代码获取直播流:

const liveContext = uni.createVideoContext('liveVideo');
liveContext.play();

横屏状态管理

监听设备旋转事件:

onReady() {
  uni.onWindowResize((res) => {
    if(res.size.windowWidth > res.size.windowHeight) {
      console.log('横屏状态');
    }
  });
}

注意事项

  1. 测试时使用真实设备,模拟器可能不支持方向感应
  2. 直播流地址需要支持跨域访问
  3. iOS需要配置UISupportedInterfaceOrientations
  4. 部分Android机型需要单独处理全屏逻辑

以上方法可以实现uniapp中的横屏直播功能,实际开发中需根据具体直播协议和业务需求调整实现细节。

标签: uniapp
分享给朋友:

相关文章

uniapp 极光推送

uniapp 极光推送

uniapp 集成极光推送的方法 在 uniapp 中集成极光推送,需要使用官方提供的插件或自行封装原生模块。以下是具体实现方式: 使用官方插件 在 uni-app 插件市场搜索「极光推送」插件,…

uniapp打包

uniapp打包

uniapp打包步骤 H5平台打包 在项目根目录运行以下命令生成H5资源文件: npm run build:h5 打包完成后,文件默认输出到/dist/build/h5目录,可直接部署到Web服务器…

uniapp设置title

uniapp设置title

设置页面标题的方法 在UniApp中设置页面标题可以通过以下几种方式实现,适用于不同场景和需求。 通过pages.json配置 在pages.json文件中,可以为每个页面单独配置导航栏标题。找到对…

房产uniapp

房产uniapp

房产类UniApp开发指南 UniApp作为跨平台开发框架,适用于快速构建房产类应用(如二手房交易、租房平台、新房展示等)。以下是关键开发要点和实现方法: 技术选型与框架配置 跨平台适配:使…

uniapp探探

uniapp探探

uniapp实现探探滑动卡片效果 探探的滑动卡片效果主要包含卡片堆叠、左右滑动操作、动画反馈等功能。在uniapp中可以通过以下方式实现类似交互: 使用swiper组件实现基础滑动 uniapp的s…

uniapp 字体设置

uniapp 字体设置

uniapp 字体设置方法 uniapp 中设置字体可以通过以下几种方式实现,适用于不同场景和需求。 全局字体设置 在 App.vue 文件中通过样式定义全局字体,确保所有页面继承该字体设置。 &…