Documentazione

Guida completa a tutte le funzioni di GridDroid. Per ogni sezione trovi una spiegazione sintetica e un pulsante Scopri altro con i dettagli tecnici, i comandi ADB e i consigli operativi.

Inizia dalla documentazione

Installazione

GridDroid si installa in pochi minuti su Windows e Linux. Gli installer sono idempotenti: se trovano un'installazione esistente aggiornano solo i file.

Scopri altro

Windows

  • Scarica GridDroid_Setup.exe dalla pagina dei release.
  • Lancia l'installer: non richiede privilegi di amministratore.
  • Viene copiato in %LOCALAPPDATA%\Programs\GridDroid e create le scorciatoie Start Menu e Desktop.
  • Se l'app è già presente, l'installer sovrascrive solo i file più recenti mantenendo configurazioni e etichette.

Linux (Debian/Arch)

  • Copia il comando curl per Linux presente nella home del sito.
  • Lo script rileva un'installazione precedente: se trova il virtualenv esistente, lo riutilizza e aggiorna i pacchetti Python.
  • I pacchetti di sistema (adb, python3, pip) vengono saltati in modalità aggiornamento.
  • Viene creato un launcher griddroid e un desktop entry per il menu applicazioni.

Preparazione dispositivi

Ogni telefono deve avere le Opzioni sviluppatore attive, il Debug USB abilitato e l'autorizzazione ADB concessa al PC.

Scopri altro

Passaggi generali

  1. Impostazioni > Info sul telefono > Numero build: tocca 7 volte fino a "Ora sei uno sviluppatore".
  2. Entra in Opzioni sviluppatore e attiva Debug USB.
  3. Imposta la Configurazione USB su MTP / Trasferimento file, mai solo ricarica.
  4. Collega il cavo, spunta Consenti sempre da questo computer e conferma la chiave RSA.

Brand specifici

  • Xiaomi/Redmi/POCO: serve Mi Account, "Installa via USB" e "Debug USB (Impostazioni di sicurezza)" attivi. Disattiva le ottimizzazioni MIUI.
  • Samsung: abilita Sblocco OEM; se manca, rimuovi gli account Google/Samsung.
  • Realme/OPPO/OnePlus: attiva "USB debugging (Security settings)" e imposta la connessione su Trasferimento file.
  • Google Pixel: attiva Debug USB e, se serve, Sblocco OEM.
  • Huawei/Honor, ASUS, Sony, Motorola, Nokia: le stesse basi, con eventuale codice di sblocco OEM richiesto dal produttore.

Se un telefono risulta unauthorized, premi Revoca autorizzazioni debug USB e riconnetti il cavo.

Interfaccia e griglia

La dashboard mostra tutti i dispositivi in una griglia adattiva. Ogni cella ha un titolo, indicatori di stato, tag e un'area di streaming.

Scopri altro
  • Ogni cella della griglia corrisponde a un dispositivo ADB rilevato.
  • Lo stato può essere online, offline, unauthorized o disconnesso.
  • Il titolo mostra il seriale o l'etichetta personalizzata che hai assegnato.
  • Il colore del bordo e del punto di stato cambia in base alla connessione e allo streaming.
  • La sidebar sinistra ospita i gruppi, le macro, i controlli zoom e i filtri.
  • La UI è completamente dark e usa variabili CSS per adattarsi automaticamente al ridimensionamento.

Streaming in tempo reale

Lo streaming usa scrcpy-server per catturare lo schermo del telefono e inviarlo come flusso H.264 al browser.

Scopri altro
  • GridDroid esegue scrcpy-server sul dispositivo tramite ADB.
  • Viene creato un forward TCP locale verso il socket video e il socket di controllo.
  • I frame H.264 arrivano al browser come Access Unit (AU) e vengono decodificati via WebCodecs (hardware dove disponibile).
  • Il server di controllo permette invio di eventi touch, swipe e tasti in tempo reale.
  • Il riavvio automatico dello stream ha un backoff esponenziale fino a 30s e si ferma dopo 5 tentativi consecutivi.
  • Se il dispositivo esce dallo stato online, lo stream viene fermato automaticamente per evitare loop infiniti.

Zoom e griglia responsive

Lo zoom ridimensiona l'intera finestra del telefono, non solo il contenuto del video. La griglia si adatta alla risoluzione e agli schermi multipli.

Scopri altro
  • Il pulsante Zoom in/out cambia la variabile CSS --feed-zoom.
  • La larghezza base di una cella viene calcolata come 260px × zoom.
  • Il numero di colonne è derivato dalla larghezza del contenitore e dal numero massimo di colonne scelto (default 10, min 2).
  • Un ResizeObserver ricalcola le colonne a ogni resize della finestra, supportando setup multi-monitor.
  • Il valore di zoom e delle colonne viene salvato nel browser per la prossima sessione.

Controllo mouse e tastiera

Puoi interagire con un telefono come se lo avessi davanti: click, swipe, scroll, tastiera e scorciatoie.

Scopri altro
  • Clicca su una cella per metterla in focus: i tuoi input vanno solo a quel dispositivo.
  • Click sinistro = tap; drag = swipe; scroll = scroll verticale; click destro = tasto BACK.
  • La digitazione testuale usa adb shell input text oppure il canale nativo di scrcpy.
  • I keyevent (HOME, BACK, APP_SWITCH, ENTER, volume, ecc.) vengono tradotti in codici Android e inviati via ADB.
  • Su brand che richiedono autorizzazioni extra (Xiaomi, OPPO, Realme) attiva "Debug USB (Impostazioni di sicurezza)" per permettere l'input.

Modalità broadcast

La broadcast mode replica ogni input su tutti i dispositivi selezionati, utile per aggiornare app, impostazioni o testare in parallelo.

Scopri altro
  • Seleziona i dispositivi dalla griglia o tramite il bottone di selezione per cella.
  • Attiva la Broadcast mode dalla sidebar; il focus verrà ignorato e gli input verranno inviati a tutti i target.
  • Click, swipe e testi vengono inviati in parallelo a ciascun dispositivo connesso.
  • I dispositivi offline o non autorizzati vengono automaticamente esclusi dai target.
  • Usa i gruppi per selezionare rapidamente un sottoinsieme di dispositivi in broadcast.

Etichette, tag e ricerca

Ogni dispositivo può avere un'etichetta visibile e più tag. Puoi cercare per nome, seriale o tag nella barra di ricerca.

Scopri altro
  • L'etichetta sostituisce il seriale nel titolo della cella, rendendo la farm leggibile.
  • I tag sono stringhe libere (es. "test", "xiaomi", "account1") e vengono salvati sul server.
  • La ricerca filtra in tempo reale per nome, seriale o tag.
  • I tag possono essere assegnati in blocco da una finestra dedicata nella sidebar.

Gruppi

I gruppi ti permettono di organizzare i dispositivi in set logici e selezionarli tutti in un click.

Scopri altro
  • Crea un gruppo dalla sidebar con il campo "Nuovo gruppo".
  • Assegna i dispositivi a uno o più gruppi dalla scheda Assegna gruppo.
  • Clicca sul nome di un gruppo per selezionare tutti i dispositivi che lo contengono.
  • Cancellare un gruppo rimuove il tag da tutti i dispositivi senza eliminare i dispositivi.
  • I gruppi persistono in localStorage sul client e in memoria sul server.

Operazioni di massa

Installa APK, riavvia, esegui comandi shell, invia file e pulisci i log su più dispositivi contemporaneamente.

Scopri altro
  • Installa APK: seleziona il file e invia adb install a tutti i target scelti, oppure al solo focus.
  • Riavvia: esegue adb reboot e rimuove lo streaming per i dispositivi offline temporanei.
  • Shell custom: scrivi un comando ADB e viene eseguito in parallelo sui dispositivi selezionati.
  • Push/Pull: carica un file locale nella memoria del telefono o scarica un percorso remoto sul PC.
  • Screen on/off e rotate: invia eventi di alimentazione e rotazione senza sbloccare il telefono.

Macro

Le macro registrano una sequenza di click sullo stream e la riproducono su uno o più dispositivi.

Scopri altro
  • Premi Registra: ogni click sullo stream viene salvato con le coordinate relative al feed.
  • Premi Ferma per salvare la sequenza con un nome.
  • Riproduci una macro selezionandola dalla lista; puoi applicarla al focus o in broadcast.
  • Le coordinate vengono ricalibrate in base allo zoom e alla risoluzione nativa del dispositivo.

Sicurezza e privacy

GridDroid è progettato per girare interamente in locale, senza inviare i tuoi dati o i tuoi stream su server esterni.

Scopri altro
  • Il server FastAPI e il WebSocket girano su 127.0.0.1.
  • Non esporre GridDroid su Internet: ADB e il server web non sono pensati per reti pubbliche.
  • La chiave RSA/ADB deve essere accettata esplicitamente sul telefono.
  • Disattiva Debug USB quando non serve per evitare accessi fisici non autorizzati.
  • I log e le etichette rimangono sul PC; le immagini dello stream sono decodificate lato client.

Risoluzione problemi

Di seguito i problemi più comuni e le soluzioni rapide.

Scopri altro
  • unauthorized: revoca le autorizzazioni debug USB sul telefono e riconnetti; accetta la chiave RSA.
  • offline: cambia cavo o porta USB (preferisci USB 2.0), imposta la connessione su MTP, esegui adb kill-server e ricollega.
  • ???? / nessun nome: su Windows mancano i driver ADB; su Linux mancano le regole udev.
  • Non riesco a cliccare: su Xiaomi/Redmi/POCO attiva "Debug USB (Impostazioni di sicurezza)".
  • Lo stream è nero o si blocca: chiudi e riapri lo stream, verifica che il telefono sia sbloccato, controlla i log di GridDroid.
  • Hub USB instabile: usa un hub alimentato esternamente; con 20-30 telefoni la corrente USB del PC non è sufficiente.

Pronto a provarlo?

Torna alla home, scarica GridDroid e inizia a controllare la tua farm Android.

Scarica GridDroid