0

Я разрабатываю расширение Chrome прямо сейчас.nofitication created chrome extension api не отображается более одного раза

Я хотел бы показать уведомление при определенных условиях.

и я могу показать уведомление однократно.

Но, как только появится уведомление, даже если я перезагружаю веб-страницу, он еще не отображает уведомление!

Я так застрял в этой проблеме.

Пожалуйста, помогите мне!

благодарственные заранее :)

manifest.json

{ 
"name": "test", 
"version": "0.1", 
"manifest_version": 2, 

"permissions": [ 
    "tabs", "notifications", "http://*/*" 
], 

"background": { 
    "scripts": ["background.js"], 
    "persistent": false 
}, 

"content_scripts": [ 
    { 
     "matches": ["http://*/*"], 
     "js": ["myscript.js"] 
    } 
] 

}

myscript.js

var message = { 
    text:"hello" 
} 

chrome.runtime.sendMessage(message, function(response) { 

}); 

backgro und.js

chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) { 

var test = chrome.notifications.create(
    'notification',{ 
     type: 'basic', 
     title: "title", 
     message: request.text, 
     iconUrl:"icon.png" 
     }, 

    function(notificationId) { 

    } 

); 


chrome.notifications.onClosed.addListener(function (notificationId, byUser){ 

     console.log("this doesn't call as well); 
}); 

ответ

1

Когда уведомление не нажата, он автоматически будет скрыт (но не закрыт) через несколько секунд. Вызов create снова с существующим идентификатором уведомления не воссоздает или не показывает уведомление.

Позвоните chrome.notifications.clear, чтобы удалить ранее созданное уведомление с идентификатором «уведомление» перед вызовом chrome.notifications.create:.

var notificationId = 'notification'; // Whatever 
chrome.notifications.clear(notificationId, function() { 
    chrome.notifications.create(notificationId, ...); 
}); 
+0

Спасибо! Я вызвал метод clear() в обратном вызове метода create(). Вот почему это не сработало. Теперь у меня есть clear() метод вне метода create(), он, наконец, работает !!! – W3Q

Смежные вопросы