Làm cách nào để phát hiện thông báo mức thiết bị BẬT hoặc TẮT bằng cách sử dụng javascript cho Ứng dụng PWA?


12

Yêu cầu của tôi là làm thế nào để phát hiện bật / tắt thông báo cấp thiết bị trong thiết bị Android bằng javascript (không sử dụng bất kỳ loại plugin nào chỉ bạn có thể sử dụng trình cắm nếu plugin này hỗ trợ cho ứng dụng PWA).

Theo thông báo tắt, tôi cần hiển thị cửa sổ bật lên cho người dùng, vui lòng bật tính năng thông báo mà bạn sẽ nhận được thông báo.

Dưới đây câu trả lời chỉ dành cho thông báo cấp trình duyệt thám tử. Nếu ai biết Xin vui lòng cho tôi câu trả lời chính xác làm thế nào để làm điều đó. Bởi vì, tôi dừng lại ở đó.

Vui lòng kiểm tra hình ảnh ở đây người dùng kích hoạt một lần nếu người dùng vô hiệu hóa thì tôi không thể gửi thông báo.

nhập mô tả hình ảnh ở đây


1
Trình duyệt sẽ trả lại điều đó, tôi không nghĩ vì vậy bạn cần phải quan tâm đến điều đó. Một trình duyệt chỉ có thể yêu cầu sự cho phép nếu thông báo tổng thể được cho phép. Chúng tôi có thể kết nối nếu cần.
anshulix

1
@anshulix quyền của bạn. Tôi đã xử lý cấp trình duyệt rồi. Nhưng nếu người dùng tắt cấp thiết bị, tôi không thể đẩy thông báo. vì vậy, tôi không thể kích hoạt trực tiếp trên thiết bị người dùng, đó là lý do tại sao tôi hiển thị ít nhất là bật lên.
Prabhat

1
Trình duyệt chỉ cung cấp trạng thái thông báo cấp trình duyệt..Tôi đoán bạn muốn nói như thế nào (Thông báo).
Prabhat

Bất cứ ai có thể đưa ra câu trả lời .. xin vui lòng .. !!
Prabhat

Nếu bạn đã kích hoạt giao diện Android với ứng dụng web, thì bạn có thể tạo một cái móc có thể xử lý nó cho bạn. Hoặc, bạn có thể thử Notification.requestPermission. Không thực sự chắc chắn nó sẽ hoạt động tốt như thế nào trên một ứng dụng web di động tùy chỉnh.
Varun Agarwal

Câu trả lời:


4

Tính năng dường như cũng ghi nhận , bạn đã thử:

function notifyMe() {
  // Let's check if the browser supports notifications
  if (!("Notification" in window)) {
    console.log("This browser does not support desktop notification");
  }

  // Let's check whether notification permissions have alredy been granted
  else if (Notification.permission === "granted") {
    // If it's okay let's create a notification
    var notification = new Notification("Hi there!");
  }

  // Otherwise, we need to ask the user for permission
  else if (Notification.permission !== 'denied' || Notification.permission === "default") {
    Notification.requestPermission(function (permission) {
      // If the user accepts, let's create a notification
      if (permission === "granted") {
        var notification = new Notification("Hi there!");
      }
    });
  }

  // At last, if the user has denied notifications, and you 
  // want to be respectful there is no need to bother them any more.
}

Hey..Mose .. câu trả lời của bạn là dành cho thông báo cấp trình duyệt .. Tôi đang hỏi về cấp độ thiết bị..làm thế nào để phát hiện?
Prabhat

Có, tôi đã thử và thực hiện cho cấp trình duyệt. Nhưng tôi dự trữ trên cấp thiết bị .. phát hiện thông báo.
Prabhat

@Prabhat theo MDN "API thông báo cho phép trang web hoặc ứng dụng gửi thông báo được hiển thị bên ngoài trang ở cấp hệ thống; điều này cho phép các ứng dụng web gửi thông tin đến người dùng ngay cả khi ứng dụng ở chế độ chờ hoặc trong nền .."
Mosè Raguzzini

có nhưng nếu người dùng tắt thông báo ở cấp thiết bị thì tôi không thể đẩy thông báo .. vui lòng kiểm tra ảnh chụp màn hình của tôi.
Prabhat

1
@ Đây là bảo mật trình duyệt, để truy cập thông tin cấp cao hơn, bạn nên bọc ứng dụng web của mình trong một ứng dụng và hỏi trực tiếp hệ điều hành, sau đó truyền thông tin đến chế độ xem web.
Mosè Raguzzini
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.