Guida
Android File Transfer e il muro dei 4 GB
I file più piccoli si copiano, il video lungo no. Android File Transfer non ha mai spostato un file oltre i 4 GB, e le schede SD FAT32 hanno un limite di 4 GB tutto loro. Ecco perché, e cosa funziona al suo posto.
Android File Transfer, la vecchia app di Google per usare i telefoni Android sul Mac, non riesce a copiare un file più grande di 4 GB. Tutto ciò che è più piccolo passa; il video lungo in 4K, il film, l'immagine disco o l'archivio di backup no. Google non ha mai spiegato il limite. La causa probabile è un campo da 32 bit per la dimensione in MTP, il protocollo usato dall'app, e altri strumenti che parlano MTP o adb non hanno questo limite.
Per aggirarlo serve un altro strumento: un'app MTP che gestisca i file grandi, adb, oppure il telefono montato nel Finder. C'è un caso che nessuno strumento risolve: se il file va su una scheda SD formattata in FAT32, è la scheda stessa a non poter contenere un file di 4 GB o più.
Come riconoscerlo
- Un file fallisce e gli altri si copiano. Copi una cartella di clip e passano tutte tranne la più grande.
- La dimensione è appena oltre la soglia. Il limite è 4 GiB, cioè 4.294.967.296 byte. Il Finder conta in migliaia, quindi lo mostra come 4,29 GB. Un file che il Finder indica come 4,2 GB è sotto il limite; uno da 4,3 GB è sopra.
- Succede in Android File Transfer, o su una scheda. Lo stesso file passa con altri strumenti, a meno che la destinazione non sia una scheda SD FAT32, che lo rifiuta qualunque strumento tu usi.
Google non offre più Android File Transfer. La sua vecchia pagina ora rimanda gli utenti Windows a Quick Share, di cui non esiste una versione per Mac. Se hai ancora l'app, il limite è un motivo in più per cambiare: cosa sostituisce Android File Transfer presenta le alternative.
Perché esiste il limite
MTP descrive ogni file sul telefono con un piccolo record, il dataset ObjectInfo, che contiene il nome del file, il formato, la cartella che lo contiene e la dimensione. Il campo della dimensione, «Object Compressed Size», è un numero senza segno a 32 bit. Il valore più alto che può contenere è 4.294.967.295, un byte in meno di 4 GiB.
MTP ha dovuto adottare una soluzione per i file più grandi. Quando un file è troppo grande per il campo, il campo viene impostato a 0xFFFFFFFF, il valore massimo consentito, e la dimensione reale è conservata in una proprietà separata a 64 bit, «Object Size», che il computer deve chiedere con un'altra richiesta. Il codice MTP di Android la descrive allo stesso modo: la dimensione nel record dell'oggetto è a 32 bit, e tutto ciò che supera i 4 GB arriva da una proprietà letta con un'operazione diversa.
Uno strumento che legge solo il campo a 32 bit, o che non invia mai quello a 64 bit quando copia sul telefono, non può gestire un file oltre i 4 GB. Android File Transfer si comporta esattamente come uno strumento del genere. Google non l'ha mai detto, ed è per questo che si tratta della spiegazione probabile e non di una documentata. Altro su come funziona MTP in MTP spiegato.
Le schede SD FAT32 hanno un loro limite di 4 GB
Anche FAT32 memorizza la dimensione di ogni file in 32 bit, quindi nessun file su una scheda FAT32 può arrivare a 4 GiB. È una caratteristica del formato della scheda, non del cavo né dell'app. Il codice MTP di Android lo controlla prima che si muova qualcosa: quando la memoria di destinazione ha una dimensione massima per i file, come una scheda FAT32, il telefono rifiuta come troppo grande un file di 4 GB o più.
exFAT memorizza le dimensioni in 64 bit e non ha questo limite. Quando Android standard formatta da solo una scheda, su un telefono che supporta entrambi i formati, sceglie FAT32 per le schede fino a circa 32 GB ed exFAT per quelle più grandi. Quindi è una scheda piccola quella che con più probabilità è in FAT32.
Per controllare, inserisci la scheda in un lettore di schede sul Mac e guardala in Utility Disco, oppure selezionala nel Finder e scegli File > Ottieni informazioni. FAT32 compare come MS-DOS (FAT32). Per cambiarlo devi formattare la scheda, il che la cancella, quindi prima copia tutto altrove. Se la formatti in exFAT sul Mac, controlla che il telefono la legga prima di riempirla. Le schede SD Android su un Mac ne parla più a fondo, e se ne riempi una in un lettore di schede, il Mac ci lascia anche i file ._.
Come aggirarlo
| Strumento | File oltre i 4 GB | Cosa serve sul telefono | Dove lavori |
|---|---|---|---|
| Android File Transfer | No | Modalità Trasferimento di file | La sua finestra, e Google non lo offre più |
| OpenMTP | Sì | Modalità Trasferimento di file | La sua finestra a due pannelli |
| adb push e pull | Sì | Debug USB | Terminale |
| SideMount | Sì | Debug USB | Il Finder e tutte le app del Mac |
| Dividere il file | Sì, in parti da riunire dopo | Ciò che richiede il tuo strumento | Terminale o un'app per archivi |
Un'app MTP che gestisce i file grandi
OpenMTP è gratuita e open source, funziona con il telefono nella stessa modalità Trasferimento di file che usava Android File Transfer, e dichiara chiaramente di trasferire file oltre i 4 GB. Mostra il Mac e il telefono in due pannelli della sua finestra. Se non vuoi mai attivare il debug USB, è il sostituto più vicino.
adb
adb, l'Android Debug Bridge, copia file di qualsiasi dimensione. Installa i Platform-Tools di Google, attiva il debug USB (come attivare il debug USB), autorizza il Mac sul telefono e copia dal Terminale:
adb pull /sdcard/DCIM/Camera/VID_20261016_101500.mp4 ~/Movies/
adb push ~/Movies/film.mkv /sdcard/Movies/
Il nome del file qui sopra è un esempio; adb shell ls /sdcard/DCIM/Camera elenca quelli veri. adb o MTP spiega cosa permette il debug USB e come revocarlo.
Il telefono nel Finder
SideMount parla adb da solo attraverso il cavo e monta il telefono come volume nel Finder, quindi un file grande si copia come qualsiasi altro nel Finder, e le altre app possono aprirlo sul telefono senza prima copiarlo. Non c'è un limite di 4 GB; un video da 4,5 GB è uno dei file con cui viene provato. Richiede macOS 26 o successivo e il debug USB, e la guida alla configurazione spiega entrambi.
Dividi il file
Se non puoi fare a meno di uno strumento con il limite, taglia il file in parti sotto i 4 GB, copia le parti e riuniscile dall'altra parte. Nel Terminale del Mac:
split -b 3900m film.mkv film.mkv.part-
cat film.mkv.part-* > film.mkv
La prima riga crea le parti; la seconda le riunisce. Per riunirle sul telefono serve un'app capace di farlo, e il file riunito ha comunque bisogno di una memoria che possa contenerlo, cosa che una scheda FAT32 non può fare. Funziona, ma è la più scomoda delle opzioni.
Domande
Il limite di 4 GB è in Android o nell'app per Mac?
In Android File Transfer, per quanto se ne sa. L'MTP di Android può portare file più grandi nella memoria interna del telefono, e altri strumenti per Mac come OpenMTP, adb e SideMount li copiano. L'eccezione è una scheda SD FAT32, che non può contenere un file di 4 GB o più con nessuno strumento.
Perché Google l'ha limitato a 4 GB?
Google non l'ha mai detto. Il motivo probabile è il record degli oggetti di MTP, che memorizza la dimensione di un file in un campo a 32 bit che arriva appena sotto i 4 GiB. Le dimensioni più grandi richiedono una proprietà separata a 64 bit, e a quanto pare l'app non l'ha mai usata.
Perché un file grande non si copia sulla mia scheda SD anche con un'altra app?
Probabilmente la scheda è formattata in FAT32, che non può memorizzare un file di 4 GiB o più. Il telefono rifiuta il file qualunque app lo invii. Copialo invece nella memoria interna, oppure fai un backup della scheda e riformattala in exFAT.
exFAT ha un limite di dimensione per i file?
Non uno che incontrerai. exFAT memorizza le dimensioni dei file in 64 bit. Android standard lo usa quando formatta una scheda più grande di circa 32 GB, e FAT32 per le schede più piccole.
Il tuo telefono Android, nel Finder.
Gratis per sette giorni, senza carta di credito. macOS 26 o successivo.