【Unity】微信小游戏适配之屏幕常亮

屏幕常亮

Unity:

Screen.sleepTimeout = SleepTimeout.NeverSleep;

微信:

wx.setKeepScreenOn(Object object)
功能描述
设置是否保持常亮状态。仅在当前小程序生效,离开小程序后设置失效。

参数

Object object

属性类型默认值必填说明
keepScreenOn boolean   是否保持屏幕常亮
success function   接口调用成功的回调函数
fail function   接口调用失败的回调函数
complete function   接口调用结束的回调函数(调用成功、失败都会执行)
示例代码
wx.setKeepScreenOn({
  keepScreenOn: true
})

Unity-微信:

 WeChatWASM.SetKeepScreenOnOption onKeepScreenOnOption = new WeChatWASM.SetKeepScreenOnOption()
 {
     keepScreenOn = true,
     fail = (result) => { Debug.LogError(result.errMsg); }
 };
 WeChatWASM.WX.SetKeepScreenOn(onKeepScreenOnOption);

上面设置在安卓端一切正常,但是iOS(lj)部分会有问题

系统特性:iOS 系统在后台处理时,出于省电考虑,通常会自动取消屏幕常亮的设置。这并非微信小游戏的特有问题,而是 iOS 系统的默认行为。

 解决方案:
可以尝试在小游戏回到前台时再次调用 wx.setKeepScreenOn 设置屏幕常亮。

WeChatWASM.WX.OnShow(OnWXShowCallBack);
private void OnWXShowCallBack(WeChatWASM.OnShowListenerResult result) { WXSetKeepScreenOn(); }

解决!!

posted @ 2024-10-31 20:48  lovewaits  阅读(41)  评论(0编辑  收藏  举报