2013-05-27 3 views
6

Ho creato un'estensione per Chrome in cui viene utilizzato createHTMLNotification() per mostrare una finestra in cima a tutto. Tuttavia, a partire da Chrome 28 Google ha deciso di eliminare interamente lo createHTMLNotification() (perché, Google, perché?). Tutto ad un tratto ho bisogno di trovare un sostituto.createHTMLNotification() replacement

createHTMLNotification() fammi modificare dinamicamente le cose sulla notifica. Tuttavia, non penso che la nuova Rich Notification mi consenta di farlo.

C'è qualche soluzione o suggerimenti? Grazie.

+0

Se non avete bisogno di uno stile elegante, ma solo un'immagine, intestazione e il corpo, utilizzare 'webkitNotifications.createNotification (iconURL, testa, corpo) ; 'e' .show() '/' .close() 'per sostituire il contenuto. –

+0

Su Mac OS X quando si utilizza 'webkitNotifications.createNotification' l'icona sarà sempre l'icona di Chrome. Sembra che non ci sia alcun modo per aggirare questo. – raine

risposta

3

Dopo un po 'di riflessione, non volevo rimanere bloccato con il layout predefinito di Google. Quindi ho usato la notifica del tipo image e ho inserito un'immagine di canvas generata. Posso disegnare quello che voglio, e ho anche creato una piccola API per aggiornare la notifica ogni volta che voglio. Questo ha funzionato perfettamente per me.

Grazie Google per rendere tutto così complicato ...

+0

Ho lo stesso problema: le notifiche che la mia estensione sta creando sono interattive e non possono essere sostituite utilizzando alcun modello predefinito. Quindi, stai dicendo che posso creare una tela e catturare e reagire a qualsiasi clic su di esso? –

+2

@KonradDzwinel - Sfortunatamente, non sarà in grado di catturare azioni dell'utente diverse da un [evento click semplice (senza coordinate)] (http://developer.chrome.com/extensions/notifications.html#event-onClicked). Il meglio che puoi fare è usare la funzione del pulsante, che ha un massimo di 2 pulsanti per notifica. –

+0

Grazie per la spiegazione! Per me, due pulsanti e un'immagine cliccabile non sono ancora sufficienti. Hai pensato di aprire un popup standard ('window.open')? –

4

La modifica era in realtà announced properly on the Chromium-Extensions mailing list. A quanto pare, tuttavia, c'è stato un equivoco, è stato dichiarato in august last year che sarebbe rimasto in uso per le estensioni, ma che è durato solo sei mesi.

In ogni caso, la sostituzione ufficiale consigliata è Rich Notifications API. Non c'è nessun altro workaround pianificato.

+0

IMO dovrebbero semplicemente lasciare la notifica HTML da soli, o almeno notificarci e darci più tempo per passare alla nuova notifica ricca. –

+0

Come detto, la notifica formale di EOL era nell'agosto 2012, ma non erano ancora chiari sul fatto che avrebbe eventualmente avuto conseguenze sugli sviluppatori di estensioni. C'è più gente incazzata nell'interwebs su questo argomento da quello che ho trovato :) –

+0

C'è qualche posto in cui tutti possiamo lamentarci di questo? Qualsiasi crbug aperto? –