A maioria dos tablets, senão todos, possui uma partição que funciona como um cartão SD. Geralmente aparece nas configurações de armazenamento como NAND FLASH e nos exploradores como /mnt/sdcard.
Esta partição é usada pelo sistema como se de um cartão SD se tratasse, podendo ser desmontada ou apagada. O sistema está configurado, assim como determinadas aplicações, para gravar nessa memória dados específicos (ex: downloads, fotos, etc) e para nela instalar/mover aplicações, seja de forma automática ou pela opção "Move to SD". Caso esse local não exista (ausente de fábrica/desmontado) ou esteja cheio, o utilizador é notificado com uma mensagem deste género:
"Não foi possível mover o aplicativo. Não há espaço de armazenamento suficiente."
Portanto conclui-se que é uma memória muito importante e que deve ser o maior possível, tendo em conta as nossas necessidades de instalar aplicações.
Ora, acontece que nem todos os dispositivos vêm com uma grande quantidade desta memória e mesmo que possuam uma expansão para colocar cartões SD, o sistema não irá usar essa expansão para instalar/mover aplicações, servindo apenas para armazenamento básico.
Então como é que se resolve este problema?
Trocando as etiquetas e caminhos de montagem das memórias
.
A atribuição destes parâmetros é feita pelo ficheiro "/etc/vold.fstab":
SD Interno (cartão virtual)
dev_mount flash /mnt/sdcard auto /dev/block/mtd/by-name/user /dev/block/platform/emmc/by-name/user
SD Externo (cartão real)
dev_mount sdcard /mnt/external_sd auto /devices/platform/rk29_sdmmc.0/mmc_host/mmc
Dispositivo de Armazenamento USB (ex: pen USB ligada via OTG)
dev_mount udisk /mnt/usb_storage auto /devices/platform/usb20_host/usb /devices/platform/usb20_otg/usb
Será necessário permutar as etiquetas de montagem (
flash|
sdcard), os caminhos de montagem (
/mnt/sdcard|
/mnt/external_sd) e alterar a referencia do dispositivo da memória interna (
/devices/virtual/mtd/mtd9/mtdblock9)
Deverá ficar assim:
SD Interno (cartão virtual)
dev_mount sdcard /mnt/external_sd auto /devices/virtual/mtd/mtd9/mtdblock9
SD Externo (cartão real)
dev_mount flash /mnt/sdcard auto /devices/platform/rk29_sdmmc.0/mmc_host/mmc
Dispositivo de Armazenamento USB (ex: pen USB ligada via OTG)
dev_mount udisk /mnt/usb_storage auto /devices/platform/usb20_host/usb /devices/platform/usb20_otg/usb
Após reiniciar o dispositivo a permuta será visível. O cartão real irá aparecer como NAND FLASH ou /mnt/sdcard (memória externa de base), enquanto que o cartão virtual será agora apenas uma simples memória extra para guardar coisas básicas.
Escusado será dizer que a presença de um cartão no dispositivo é agora obrigatória para o seu correcto funcionamento. A não inclusão de um cartão implicará o surgimento frequente de mensagens de espaço insuficiente.