>

확장 프로그램을 개발했으며 Chrome API를 사용하여 백그라운드 스크립트에서 20 초마다 알림을 보냅니다

manifest.json

{
  "name": "Test",
  "description": "Test",
  "manifest_version": 2,
  "version": "0.1",
  "chrome_url_overrides" : {
    "newtab": "register.html"
  },
  "background": {
    "scripts": ["background.js"]
  },
  "permissions": ["idle", "tabs", "gcm", "storage", "notifications"],
  "icons": { "128": "gcm_128.png" }
}

background.js // 알림을 보냅니다

 function messageReceived(message) {
    var messageString = '';
    if(message) messageString = message;
    var nid = getNotificationId();
    messageString = messageString + nid;
    // Pop up a notification to show the GCM message.
    chrome.notifications.create(nid, {
      title: 'Kukdu Kuuu',
      iconUrl: 'gcm_128.png',
      type: 'basic',
      message: messageString
    }, function() {});
  }
  // Returns a new notification ID used in the notification.
  function getNotificationId() {
    var id = Math.floor(Math.random() * 9007199254740992) + 1;
    return id.toString();
  }
  setInterval(function() {
    console.log('running - ');
    messageReceived('test notification ');
  }, 20000);

Chrome 브라우저가 아닌 경우, 즉 초점이 맞지 않을 때 알림을 표시합니다. 하지만 크롬 작업을 할 때 알림을받지 않습니다.

API를 실행할 때 chrome.notifications.getAll() , 전체 ID 대기열을 얻습니다.

그러나 시스템에 알림이 즉시 표시되지 않습니다. 무엇이 문제 일 수 있습니까? 그러나 Windows 시스템에서는 잘 작동합니다.

  • 답변 # 1

    크롬에서 공개 된 문제입니다.

    링크는 다음과 같습니다

    https://bugs.chromium.org/p/chromium/issues/detail?id=583746#

    중요한 의견 및 요약,

    와이즈 비즈

    현재 푸시 알림 동작

    와이즈 비즈

    This is definitely intentional but is is also a questionable decision.

    Pro: * Won't interrupt immersive content such as movies with a notification.

    Con: * People use full screen to just browse as well, esp. on Mac with the new fullscreen mode.

    ( Comment by [email protected] )

  • 이전 javascript - 드롭 다운의 텍스트 정렬 확인란
  • 다음 엘릭서 - 이 중첩 된 목록에서 값을 반복하고 수집하는 더 좋은 방법은 무엇입니까?