lunedì 24 marzo 2014

Android 4.x - poca memoria: recuperare moltissimo spazio effettuando lo SWAP delle SD



La soluzione definitiva (o quasi) al problema della mancanza di spazio su Android è una: utilizzare una scheda MicroSD. Il vero problema è che pochissimi cellulari permettono di installare app direttamente su scheda MicroSD, tantomeno di salvarci in automatico foto, video e altro ancora. E bisogna dire che non sempre i programmi per effettuare questo scambio sono efficaci. Alcuni potrebbero esserlo, ma sono di difficile configurazione e non è facile trovare i parametri corretti da inserire.
Molto spesso, a complicare le cose, tantissimi cellulari android presentano una scheda di memoria (sd) virtuale, non fisica, dove è permesso installare applicazioni etc etc. In questo articolo vedremo come far credere al nostro dispositivo che la scheda MicroSD fisica (quella che noi inseriamo nell'apparecchio) sia quella virtuale e viceversa. In altre parole, ecco come si effettua lo swap delle schede SD in Android 4.x.

Premessa:

In primo luogo abbiamo bisogno dei permessi di root, cioè di poter effettuare modifiche che normalmente il cellulare appena uscito dalla fabbrica non ti fa effettuare. Per una guida su come ottenere permessi di root con dispositivi che montano un processore MT6589 (o MT6589T) SENZA installare custom rom, cancellare cose o flashare alcunché, date uno sguardo a questo articolo. Inoltre credo (qui lo affermo, qui lo nego) che la stessa procedura di root (avendo i driver appropriati) possa essere effettuata allo stesso modo indolore.

  1. Avendo i permessi di root, dobbiamo prima di tutto capire quale sia la "cartella" della scheda virtuale e quale quella della sd fisica. Per fare ciò abbiamo bisogno di ES Gestore File (gratuito sul PlayStore).
  2. Apriamo ES Gestore File. Clicchiamo sull'icona del menù in alto a sinistra (vedi immagine a seguire) e selezioniamo "Locale" e poi "/ Dispositivo".
  3. Dall'elenco delle cartelle appena apparso, tappiamo la cartella "Storage" per aprirla.
  4. All'interno troverete probabilmente due cartelle del tipo "sdcard0" e "sdcard1" (oppure sdcard e externalSD, qualcosa di simile). Aprite prima l'una e poi l'altra per capire quale delle due sia quella virtuale (interna) e quale quella fisica (removibile) e appuntatevelo da qualche parte. In quella fisica, cliccate su "Nuovo" e poi scegliete File. Nominate il file "SD FISICA.txt". Questo vi permetterà di distinguerle in seguito.
  5. Ora dovete copiare il contenuto intero della scheda di memoria virtuale su quella fisica per fare in modo che dopo lo scampio le app continuino a funzionare normalmente. E' meglio che la scheda fisica sia vuota. Potete farlo in due modi:
    • Collegando il cellulare al pc tramite cavo USB e copiare i file della scheda virtuale sulla seconda; Dopodiché effettuate la rimozione sicura dal pc e scollegate il telefono;
    • Utilizzando ES Gestore File: aprite nuovamente il menù in alto a sinistra, andate in strumenti e abilitate "root explorer". Adesso state attenti, potreste cancellare anche file importanti per il funzionamento del sistema. Andate nella sd virtuale, tenete premuto il dito sullo schermo su un file qualsiasi, selezionate in alto a destra le "quattro caselle spuntate"
      (significa "seleziona tutto") poi cliccate su Copia.  Andate nella scheda virtuale e incollateci il contenuto precedentemente copiato. Cliccate in alto a destra, appena prima della X cerchaita, e controllate che le dimensioni delle due cartelle (scheda virtuale e quella fisica) siano uguali.
  6. Con ES Gestore file, se non lo avete fatto in precedenza, andate in strumenti e abilitate "root explorer". State attenti, potreste cancellare anche file importanti per il funzionamento del sistema.
  7. Cliccate sul menù in alto a sinistra, poi cliccate su "Locale", "/ Dispositivo", e andate nella cartella ETC.
  8. Andate in basso e cercare il  file vold.fstab. Tenete premuto il dito sul file e cliccate su Copia.
  9. Cliccate su "nuovo", chiamate la cartella BACKUP vold.fstab. -l'operazione non reisce se non avete attivato il root.
  10. Aprite la cartella appena creata e incollateci il file che avete copiato in precedenza.
  11. Tenete premuto il dito a lungo sul file appena incollato, selezionate rinomina e rinominalo come vold.fstabBACKUP
  12. Tornate alla cartella precedente ("etc"). Cliccate una volta su vold.fstab. ES Gestore File vi chiederà "Apri come" e voi selezionerete "testo". Vi chiederà di scegliere da un elenco con quale programma aprirlo. Scegliete ES Note Editor.
  13. Bene, adesso viene il bello. Avrete qualcosa di questo tipo:
    ## Vold 2.0 Generic fstab
    ## - San Mehat (san@android.com)
    ##

    #######################
    ## Regular device mount
    ##
    ## Format: dev_mount <label> <mount_point> <part> <sysfs_path1...>
    ## label        - Label for the volume
    ## mount_point  - Where the volume will be mounted
    ## part         - Partition # (1 based), or 'auto' for first usable partition.
    ## <sysfs_path> - List of sysfs paths to source devices
    ######################

    ## Example of a standard sdcard mount for the emulator / Dream
    # Mounts the first usable partition of the specified device
    dev_mount sdcard /storage/sdcard0 emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-msdc.0/mmc_host
    dev_mount sdcard2 /storage/sdcard1 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-msdc.1/mmc_host
    ## Example of a dual card setup
    # dev_mount left_sdcard  /mnt/sdcard1  auto /devices/platform/goldfish_mmc.0 /devices/platform/mtk-sd.0/mmc_host/mmc0
    # dev_mount right_sdcard /mnt/sdcard2  auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-sd.2/mmc_host/mmc2

    ## Example of specifying a specific partition for mounts
    # dev_mount sdcard /mnt/sdcard 2 /devices/platform/goldfish_mmc.0 /devices/platform/msm_sdcc.2/mmc_host/mmc1

    # usb otg disk
    dev_mount usbotg /mnt/usbotg auto /devices/platform/mt_usb /devices/platform/musbfsh_hdrc
  14. Il file varia da modello a modello, ma il principio è lo stesso. Qui sta a voi ragionare un pochino. Sappiate che i simboli di cancelletto # prima di ogni riga significano che la stessa riga è commentata e, quindi, non viene letta dal dispostivo. Ciò che ci interessa sono le righe evidenziate. La mia sd card virtuale corrisponde al percorso /storage/sdcard0, quella fisica /storage/sdcard1. Ciò che dobbiamo fare adesso e invertire alcuni pezzi di codice.
  15.  Andate dopo SDCARD0 (o equivalente) e premete invio (a capo). Andate dopo mtk-msdc.0/mmc_host e premete anche qui invio. Adesso fate lo stesso dopo SDCARD1 ( o equivalente) e dopo mtk-msdc.1/mmc_host.
  16. Adesso copiate il primo pezzo dopo SDCARD0 (o equivalente) che avete mandato a capo e incollatelo di sqguito a SDCARD1 (o equivalente) distaziato da uno spazio. Copiate il pezzo che era dopo SDCARD1 (che adesso sarà dopo il secondo "host") e incollatelo dopo SDCARD0.

    Per rendere chiaro il concetto: se prima avevamo :
    dev_mount sdcard /storage/sdcard0 emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-msdc.0/mmc_host
    dev_mount sdcard2 /storage/sdcard1 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-msdc.1/mmc_host

    Adesso avremo:

    dev_mount sdcard /storage/sdcard0 auto /devices/platform/goldfish_mmc.1 /devices/platform/mtk-msdc.1/mmc_host
     
    dev_mount sdcard2 /storage/sdcard1 auto emmc@fat /devices/platform/goldfish_mmc.0 /devices/platform/mtk-msdc.0/mmc_host 
  17. Adesso salvate il file premendo il tasto Indietro (quello del vostro dispositivo). Vi chiederà di salvare, voi fatelo.
  18. Riavviate il cellulare dopo aver salvato.
  19. Lo swap sd è effettuato!
  20. Potete verificare che la scheda sd fiisica sia diventata quella virtuale andando a cercare il file SD FISICA.txt che abbiamo creato al punto 4. Si dovrebbe trovare nella cartella dove prima c'era la sd virtuale (/storage/sdcard0). E, viceversa, la sd virtuale adesso dovrebbe apparire sotto la cartella dove c'era la sd fisica (/storage/sdcard1 oppure /storage/ExternalSD o simili).
  21. Vi consiglio di tornare in ES Gestore File, aprire il menù in alto a sinistra, andare in strumenti e DISABILITARE Root Explorer, per non cancellare alcunché inavvertitamente.
Dai un'occhiata agli altri articoli su Android! Li trovi proprio qui sotto!

Nessun commento:

Posta un commento

Fammi sapere cosa ne pensi.. lascia un commento!