Le estensioni di Chrome sono programmi software creati con tecnologie web che personalizzano l'esperienza del browser per un utente.
Le estensioni vengono eseguite in un ambiente in sandbox, ma possono interagire con i contenuti web, il che le rende adatte ad alcuni casi d'uso didattici, ad esempio:
- Filtraggio e monitoraggio del browser
- Inserimento di caratteri speciali come simboli ed equazioni matematiche
- Arricchimento dei contenuti, ad esempio identificazione di errori ortografici e grammaticali
- Applicazione delle norme (ad es. limitazione del tempo sui social media)
Quando crei soluzioni per casi d'uso didattici sui Chromebook, puoi creare un'estensione, un'app web o entrambe. Se devi eseguire il tuo programma in un contesto multiorigine, un'estensione è una buona opzione da prendere in considerazione. La tua estensione può interagire con le app web che non sono di tua proprietà. Ad esempio, un'estensione può rilevare errori grammaticali in un documento Google e fornire commenti e suggerimenti per correggerli. Un'altra estensione può aiutare gli studenti a prendere appunti raccogliendo in un unico documento il testo evidenziato su qualsiasi pagina web.
Se il tuo programma non deve essere eseguito su altri siti web, la creazione di un'app web potrebbe essere una soluzione migliore. Se hai un'app web, un'estensione di accompagnamento può migliorare l'esperienza dell'utente portando funzionalità e API che potrebbero non essere disponibili sulla piattaforma web.
Migrazione delle app di Chrome
Se in precedenza avevi un'app di Chrome, ti consigliamo vivamente di eseguire la migrazione alle app web. Le app di Chrome verranno ritirate, ma saranno supportate almeno fino a gennaio 2025 per ChromeOS. Durante questo periodo di transizione, alcune funzionalità delle app Chrome potrebbero non avere un equivalente adatto sulla piattaforma web. Per questi, potresti dover implementare un'estensione insieme alla tua app web per ottenere risultati simili tramite il passaggio di messaggi. Un esempio specifico è se vuoi utilizzare API specifiche della modalità kiosk nella tua applicazione kiosk PWA.
Sviluppare estensioni di ChromeOS
Il sito web Chrome Developers offre un'ottima guida introduttiva per iniziare a sviluppare estensioni di Chrome. Ti consigliamo di consultare anche gli esempi disponibili nel repository GitHub ufficiale di Chrome.
API
Quando sviluppi estensioni, sono disponibili diverse API per aiutarti a ottenere la funzionalità che stai creando.
Inoltre, tieni presente anche alcune API solo per ChromeOS:
fileBrowserHandlerestende il file manager di ChromeOSfileSystemProvidercrea file system virtuali accessibili dal gestore di file di ChromeOSinput.imeimplementare IME personalizzati per ChromeOSidle.getAutoLockDelayrestituisce il tempo (in secondi) necessario per il blocco automatico dello schermo inattivo.
Pubblicazione e hosting
Una volta creata l'estensione, devi pubblicarla in modo che gli utenti possano installarla e utilizzarla. Esistono due meccanismi di distribuzione supportati ufficialmente: il Chrome Web Store e l'hosting autonomo.
Il Chrome Web Store ti consente di rendere disponibile la tua estensione agli utenti di tutto il mondo. Poiché l'estensione verrà ospitata e firmata dal Chrome Web Store, dovrai rispettare anche le norme dello store. Una norma da tenere presente è quella relativa alla "singola finalità", che richiede alle estensioni di avere una sola finalità rispetto all'oggetto o alla funzione del browser. Se non vuoi rendere disponibile la tua estensione al pubblico, puoi anche elencarla come privata o non in elenco. In questo modo puoi limitare l'accesso agli utenti del tuo dominio o a un gruppo di tester attendibili che puoi configurare.
Le estensioni self-hosting sono più comuni negli ambienti gestiti, come quello scolastico, in cui gli amministratori di sistema possono implementare criteri per controllare i dispositivi forniti dalla scuola. Quando decidi se eseguire o meno l'autohosting della tua estensione, valuta i compromessi in termini di configurazione e sicurezza dell'hosting dell'estensione sul tuo server. Una volta che hai creato il pacchetto e ospitato l'estensione in modo appropriato, devi condividere l'URL del file manifest XML dell'estensione self-hosted in modo che gli amministratori possano aggiungere un criterio per forzare l'installazione dell'estensione sui loro dispositivi gestiti.
Estensioni gestite
Spesso, la tua estensione potrebbe essere utilizzata dagli studenti su dispositivi gestiti. È importante comprendere le seguenti norme di gestione che gli amministratori possono applicare ai dispositivi degli studenti e come possono influire sulla funzionalità della tua estensione:
- Bloccare un'estensione su una versione specifica.
- Blocca l'installazione di estensioni esterne (estensioni non presenti nel Chrome Web Store).
- Aggiungi un elenco di host bloccati o consentiti, che controlla se un'estensione può alterare le pagine web a questi URL.
- Blocca le estensioni che richiedono determinate autorizzazioni.