PWA 응용 프로그램에 대한 자바 스크립트를 사용하여 장치 수준 알림을 켜거나 끄는 방법은 무엇입니까?


12

내 요구 사항은 자바 스크립트를 사용하여 안드로이드 장치에서 장치 수준 알림을 켜거나 끄는 방법입니다 (이 플러그인이 PWA 응용 프로그램을 지원하는 경우 플러그인을 사용할 수는 없습니다).

알림이 해제 된 경우 사용자에게 팝업을 표시해야하므로 알림을받을 알림 기능을 활성화하십시오.

아래 답변은 형사 브라우저 수준 알림에만 해당됩니다. 누구든지 알고 있다면 어떻게해야하는지 정확한 답을 알려주세요. 왜냐하면 나는 거기서 멈췄다.

사용자가 사용 중지하면 알림을 보낼 수없는 경우 여기에서 사용자 사용 이미지를 한 번 확인하십시오.

여기에 이미지 설명을 입력하십시오


1
브라우저는 그것을 반환 할 것이므로, 당신은 그것을 돌볼 필요가 없다고 생각합니다. 브라우저는 전체 알림이 허용 된 경우에만 권한을 요청할 수 있습니다. 필요한 경우 연결할 수 있습니다.
anshulix

1
@anshulix 당신의 권리. 이미 브라우저 수준을 처리했습니다. 그러나 사용자가 장치 수준을 벗어나면 알림을 푸시 할 수 없습니다. 따라서 사용자 장치에서 직접 활성화 할 수 없으므로 적어도 팝업을 표시해야합니다.
Prabhat

1
브라우저는 브라우저 수준의 알림 상태 만 제공합니다. (Notification.permission)과 같은 말을 의미합니다.
Prabhat

누구나 대답 할 수 있습니까?. 제발 .. !!
Prabhat

webapp과 안드로이드 인터페이스를 활성화 한 경우,이를 처리 할 수있는 후크를 만들 수 있습니다. 또는 시도해 볼 수 Notification.requestPermission있습니다. 사용자 정의 모바일 웹 애플리케이션에서 얼마나 잘 작동하는지 확실하지 않습니다.
varun agarwal

답변:


4

이 기능은 잘 문서화 된 것 같습니다 .

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 .. 귀하의 답변은 브라우저 수준 알림입니다. 장치 수준에 대해 묻고 있습니다. 어떻게 감지합니까?
Prabhat

예, 브라우저 수준에서 시도하고 구현했습니다. 그러나 장치 수준을 초과하여 재고를 확보했습니다. 알림 감지.
Prabhat

MDN에 따른 @Prabhat "알림 API를 사용하면 웹 페이지 나 앱 이 시스템 수준에서 페이지 외부에 표시되는 알림을 보낼 수 있습니다 . 이렇게하면 응용 프로그램이 유휴 상태이거나 백그라운드에 있더라도 웹 앱이 사용자에게 정보를 보낼 수 있습니다."
Mosè Raguzzini

예.하지만 사용자가 기기 수준에서 알림을 해제 한 경우 알림을 푸시 할 수 없습니다. 스크린 샷을 확인하십시오.
Prabhat

1
@ 이것은 브라우저 보안입니다. 높은 수준의 정보에 액세스하려면 웹 응용 프로그램을 응용 프로그램으로 포장하고 OS에 직접 요청한 다음 정보를 웹보기로 전파해야합니다.
Mosè Raguzzini
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.