A partire dal 12/06/2018, l'installazione in linea è deprecata. Per ulteriori informazioni, leggi il nostro Blog di Chromium post.
Domande sulla cronologia
Cosa cambierà il 12/06/2018?
Qualsiasi elemento del Chrome Web Store, ad esempio estensioni e app, pubblicato per la prima volta a partire dal 12/06/2018 verrà con l'installazione integrata disattivata. "Disattivato" significa che i tentativi di installazione viene reindirizzato automaticamente alla pagina dei dettagli dell'articolo sul Chrome Web Store, dove l'utente può per completare l'installazione. Non cambierà nulla per i primi articoli esistenti nello store pubblicate prima di questa data.
Cosa cambierà il 12/09/2018?
La disattivazione verrà applicata a TUTTI gli elementi indipendentemente dalla data di pubblicazione. 100% di installazione in linea i tentativi per tutti gli elementi verranno reindirizzati al Chrome Web Store, dove gli utenti potranno completare installare l'app.
Cosa devo fare prima del 12-09-2018?
Non devi apportare alcuna modifica, ma ti consigliamo di rivedere il flusso di installazione e di sostituire il
Chiamata chrome.webstore.install()
con navigazione direttamente alla scheda del Chrome Web Store del tuo elemento.
In questo modo puoi verificare che l'esperienza utente sia la migliore possibile.
Ti consigliamo inoltre di incorporare il nuovo badge di download del Chrome Web Store nel tuo flusso di installazione sul tuo sito.
Cosa cambierà nella versione M71 (dicembre 2018)?
A partire dalla versione M71, Chrome non supporterà più il metodo chrome.webstore.install()
e le chiamate
l'operazione non riuscirà, causando un'interruzione
del flusso di installazione sul tuo sito. A questo punto le chiamate all'API
genererà un errore di tipo JavaScript TypeError. Devi rimuovere tutte le chiamate al metodo API prima di questa data.
Dopo la disattivazione dell'installazione integrata
Come sarà il flusso di installazione?
Quando il tuo sito chiama chrome.webstore.install()
, Chrome non attiverà più subito una finestra di dialogo
ma aprirà una nuova scheda in primo piano alla pagina dei dettagli del Chrome Web Store (ad esempio
https://chrome.google.com/webstore/detail/EXTENSION_ID
). Da qui, l'utente può seguire
di installazione standard facendo clic su "installa". Una finestra di dialogo chiederà all'utente di leggere
autorizzazioni e installare o annullare. Dopo aver chiuso la finestra di dialogo, la scheda rimane in Chrome
Web Store.
Come faccio a capire se la mia installazione è riuscita?
Quando chiami chrome.webstore.install()
, il callback di errore verrà attivato con un errore
che indica che l'utente è stato reindirizzato al Chrome Web Store. Non indicherà se
l'installazione è riuscita o meno. Ricorda che, a partire da Chrome 71, le chiamate
chrome.webstore.install()
avrà esito negativo, quindi il callback non riuscito non verrà mai eseguito.
Senza questa API, il tuo sito può comunque rilevare se il tuo elemento è già installato comunicandoci tra l'estensione e il sito web. Questa operazione può essere eseguita mediante i messaggi delle estensioni e proprietà externally_connectable nel manifest.
"externally_connectable": {
"matches": ["https://www.example.com/*"]
}
// JS running on https://example.com
try {
chrome.runtime.sendMessage('EXTENSION_ID', MESSAGE, function() {
if (chrome.runtime.lastError) {
// Extension is not installed.
}
});
} catch (e) {
// Extension is not installed.
}
Sostituisci quanto segue:
EXTENSION_ID
: l'ID dell'estensione.MESSAGE
: la stringa o l'oggetto del messaggio da inviare all'estensione.
Come faccio ad attivare una pagina informativa dopo l'installazione?
Utilizza l'evento chrome.runtime e apri una nuova scheda dopo l'installazione. Ecco un esempio da utilizzare nella la tua pagina di sfondo:
chrome.runtime.onInstalled.addListener(function listener(details) {
if (details.reason === chrome.runtime.OnInstalledReason.INSTALL) {
chrome.tabs.create({url: "https://www.example.com/"});
chrome.runtime.onInstalled.removeListener(listener);
}
});
Posso ottenere un'eccezione?
No. Questa modifica alle norme si applica a tutti gli elementi del Chrome Web Store, senza eccezioni.