HarmonyOS鸿蒙Next中能否主动进入全局悬浮窗模式

HarmonyOS鸿蒙Next中能否主动进入全局悬浮窗模式 通过点击按钮,app主窗体直接进入悬浮窗模式。哪个大佬给个范例

2 回复

在HarmonyOS鸿蒙Next中,应用无法主动进入全局悬浮窗模式。该功能由系统统一管理,仅支持特定场景触发,如用户主动操作或系统事件响应。应用可通过申请悬浮窗权限,在用户授权后以悬浮窗形式显示界面,但无法直接控制全局模式的开启。

更多关于HarmonyOS鸿蒙Next中能否主动进入全局悬浮窗模式的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,可以通过WindowManagerminimize()方法实现主动进入全局悬浮窗模式。以下是示例代码:

import windowManager from '@ohos.window';

// 获取当前窗口
let windowClass = await windowManager.getLastWindow(this.context);

// 最小化窗口进入悬浮窗模式
windowClass.minimize().then(() => {
  console.info('Succeeded in minimizing the window. Handle.');
}).catch((err) => {
  console.error('Failed to minimize the window. Cause: ' + JSON.stringify(err));
});

注意:

  1. 需要申请ohos.permission.SYSTEM_FLOAT_WINDOW权限
  2. 在module.json5中配置窗口属性:
"abilities": [
  {
    "name": "EntryAbility",
    "formEnabled": true,
    "formsEnabled": true
  }
]

此方法会将当前应用窗口最小化为悬浮窗,用户可通过点击悬浮窗恢复完整窗口。

回到顶部