2***@qq.com
2***@qq.com
  • 发布:2026-03-04 20:54
  • 更新:2026-03-04 20:54
  • 阅读:14

【报Bug】plus.screen.lockOrientation('portrait-primary')

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: WIN10

HBuilderX类型: 正式

HBuilderX版本号: 4.57

手机系统: Android

手机系统版本号: Android 16

手机厂商: 小米

手机机型: Xiaomi Pad 6S Pro 12.4

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

App下载地址或H5⽹址: https://app.liuyingyong.cn/build/download/f1c1f160-17c6-11f1-8293-9bb0b3b6dc8f

示例代码:

plus.screen.lockOrientation('portrait-primary')

操作步骤:

plus.screen.lockOrientation('portrait-primary') 固定竖屏,在Xiaomi Pad 6S Pro 12.4,不起作用,还是可以横屏

预期结果:

plus.screen.lockOrientation('portrait-primary') 固定竖屏,在Xiaomi Pad 6S Pro 12.4,不起作用,还是可以横屏

实际结果:

plus.screen.lockOrientation('portrait-primary') 固定竖屏,在Xiaomi Pad 6S Pro 12.4,不起作用,还是可以横屏

bug描述:

代码里设置了固定竖屏 plus.screen.lockOrientation('portrait-primary')

以及 minifest里面设置了 screenOrientation: ['portrait-primary']

在Xiaomi Pad 6S Pro 12.4,不起作用,还是可以横屏

2026-03-04 20:54 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

需要补充详细的报错信息和尝试过的解决方案。
欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

作为 DCloud 官方人员,对该 bug 反馈的评审结论如下:

  1. 反馈完整性
    标题、描述、代码示例、复现步骤、预期/实际结果、运行平台及版本信息均已给出,满足最低可复现要求。
    但缺少:

    • 是否使用自定义基座/离线打包/云打包的说明
    • 是否在应用启动后立即执行 plus.screen.lockOrientation 还是放在某个生命周期里
    • 真机日志(logcat)中是否有报错或警告
      建议补充以上信息,方便进一步定位。
  2. 代码示例与复现步骤
    仅给出单行 plus.screen.lockOrientation('portrait-primary'),无法直接运行;需要一段最小可运行 demo(含生命周期调用时机)。
    复现步骤描述过于简单,仅一句“不起作用”,未说明是启动后旋转设备即横屏,还是进入特定页面后才横屏。

  3. 预期结果合理性
    预期“固定竖屏”本身合理,且 manifest.json 的 screenOrientation 也配置了 portrait-primary,理论上应生效。

  4. 实际结果判断
    真机仍可横屏,说明锁屏指令未生效。结合知识库:

    • Android 大屏设备(特别是平板)厂商 ROM 常对方向策略做定制,可能出现系统层面强制允许横屏的情况;
    • 目前知识库未收录 Xiaomi Pad 6S Pro 特定兼容性条目,无法直接认定为“已知限制”。
      因此暂不能认定为误报,需进一步验证。
  5. 知识库依据与替代方案
    知识库中未找到针对 Xiaomi Pad 6S Pro 的已知问题或限制说明,也未找到 plus.screen.lockOrientation 在该机型失效的记录。
    建议:

    • 先用自定义基座 + 离线打包验证,排除云打包环境差异;
    • onLaunch/onShow 中第一时间调用 plus.screen.lockOrientation('portrait-primary'),并在 logcat 中查看是否有 OrientationListener 相关错误;
    • 若仍无效,可尝试在 AndroidManifest.xml 的对应 activity 节点手动添加
      android:screenOrientation="portrait"  

      作为兜底方案;

    • 如确认是系统层面限制,可在 ask 社区提交带复现 demo 的 issue,并 @官方人员进一步跟进。

结论:
该反馈基本成立,但需补充运行方式、调用时机和日志信息,以便官方复现并确认是否为 Xiaomi Pad 6S Pro 特定 ROM 问题。

内容为 AI 生成,仅供参考

要回复问题请先登录注册