WakeLock: phương thức request()
Baseline
2025
Newly available
Since March 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Phương thức request() của giao diện WakeLock trả về một Promise được hoàn thành với một đối tượng WakeLockSentinel nếu khóa wake màn hình của hệ thống được cấp phép.
Khóa wake màn hình ngăn màn hình thiết bị bị mờ hoặc khóa khi ứng dụng cần tiếp tục chạy.
Cú pháp
request(type)
Tham số
typeOptional-
Một chuỗi xác định loại khóa wake màn hình, trong số các loại liệt kê sau:
screen-
Ngăn màn hình tắt. Chỉ các tài liệu hiển thị mới có thể yêu cầu khóa wake màn hình.
Nếu không có tham số type nào được chỉ định rõ ràng, phương thức request() mặc định sử dụng loại screen.
Giá trị trả về
Một Promise được giải quyết với một đối tượng WakeLockSentinel.
Ngoại lệ
NotAllowedErrorDOMException-
Được ném ra khi khóa wake không khả dụng, điều này có thể xảy ra vì:
- Việc sử dụng tính năng này bị chặn bởi Chính sách Quyền.
- Tài liệu không hoàn toàn hoạt động.
- Trạng thái hiển thị của tài liệu là
hidden. - User Agent không thể yêu cầu khóa wake của nền tảng. Ví dụ, điều này có thể xảy ra nếu thiết bị sắp hết pin.
Ví dụ
Hàm bất đồng bộ sau yêu cầu một đối tượng WakeLockSentinel.
Phương thức request() được bao bọc trong câu lệnh try...catch để xử lý các trường hợp trình duyệt từ chối yêu cầu vì bất kỳ lý do gì.
const requestWakeLock = async () => {
try {
const wakeLock = await navigator.wakeLock.request("screen");
} catch (err) {
// The wake lock request fails - usually system-related, such as low battery.
console.log(`${err.name}, ${err.message}`);
}
};
requestWakeLock();
Khóa wake màn hình có thể bị thiết bị thu hồi sau khi đã được cấp.
WakeLockSentinel được trả về có thể được dùng để kiểm tra trạng thái của khóa và/hoặc để hủy thủ công một khóa wake màn hình đang được giữ.
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| Screen Wake Lock API> # the-request-method> |