Vous êtes sur la page 1sur 16

Anlise do tablet BT1003 Flytouch 8 Superpad VIII com ARM Allwinner Boxchip A10

tablet BC1003 Crane um dos mais baratos do mercado e vendido aos milhares por dezenas de fabricantes diferentes, nas lojas chinesas, onde custa menos de 100 dlares. No Brasil, encontrado na MPWay com o nome de Wei Wide PRO 10 por 299 reais em 12 prestaes, mais impostos de cerca de 165 reais pagos em cash na hora de retirada nos Correios. O produto vem em uma caixa com duas marcas, Flytouch 8 e Superpad VIII, mas encontrei referncia na internet de que so marcas piratas de outros produtos. A Wei sequer se deu ao trabalho de colocar seu logotipo no produto. Foi difcil achar seu fabricante, pois, na cultura industrial shanzhai as mesmas partes e peas (e mesmo produtos completos) so usados e comercializados por diferentes fabricantes sem indicaes de procedncia. Por uma foto do circuito impresso da placa BT1003, pude achar a Yones Toptech (China) Co. Limited. Suponho que este seja o fabricante OEM original, pois o nome BT1003 corresponde sua linha de produtos. semelhante ao modelo M1050S da Kocaso. No site desta marca existem as nicas imagens para recuperao do firmware que achei na internet. O BC1003 tem placa baseada no System-on-Chip Allwinner A10 (A10_Datasheet.PDF). O programa Quick System Info Pro gera um relatrio que diz:
Dispositivo: crane-bc1003 Modelo: BC1003 Placa: crane Produto: crane_bc1003 Marca: softwinners Fabricante: unknown CPU+ABI: armeabi-v7a Bootloader: unknown Rdio: unknown Hardware: sun4i Verso: 4.0.4 SDK: 15 Tipo: eng Build: crane_bc1003-eng 4.0.4 IMM76D 20121217 test-keys Idioma: pt_BR Linux version 3.0.8+ (jackie@ubuntu) (gcc version 4.5.1 (Sourcery G++ Lite 2010.09-50) ) #68 PREEMPT Sat Dec 8 08:54:36 CST 2012

Para tirar mais informaes do dispositivo, usei o programa adb do Android Development Kit. Em Linux, tive que habilitar regras do udev para o tablet. Liguei a depurao USB e verifiquei no syslog que o dispositivo era reconhecido como:
kernel: [ 3907.368945] usb 2-6.3: New USB device found, idVendor=18d1, idProduct=0003

O idVendor 18d1 padro do Google, e o idProduct varia conforme o modo da porta USB (armazenamento de massa, dispositivo de mdia,

depurao). Assim, criei um arquivo com regra para o subsistema USB com o comando:
sudo gedit /etc/udev/rules.d/53-android.rules

e coloquei a linha:

SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", MODE="0666"

Reiniciei o servio udev:


sudo service udev restart

mas isto no adiantou. O Linux Ubuntu s permitiu acesso ao dispositivo depois de um reboot. Em Windows, o ADB precisa dos drivers que vm no pacote de desenvolvimento do Android. Liberado acesso ao dispositivo, entrei no shell do tablet com o comando:
/home/meira/android-sdk-linux/platform-tools/adb shell

O shell j abre no usurio root, pois o prompt diz root@android:/ $. O processador rpido. O comando cat /proc/cpuinfo resulta em:
Processor : ARMv7 Processor rev 2 (v7l) BogoMIPS : 1001.88 Features : swp half thumb fastmult vfp edsp neon vfpv3 CPU implementer: 0x41 CPU architecture: 7 CPU variant : 0x3 CPU part : 0xc08 CPU revision: 2 Hardware : sun4i Revision : 0000 Serial : 0a817c62545448488075895216236786

Em BogoMIPS, medida genrica de capacidade de processamento do Linux, o valor foi de 1001 pontos. O programa Antutu Benchmark resultou em quase 4 mil pontos.

O desempenho em 3D foi de mais de 30 fps no modo sem luzes e 8 fps no modo com luzes e sombras. A CPU Allwinner A10, tambm chamada de Boxchip, um fenmeno de engenharia e de marketing. Em grandes quantidades, custa 7 dlares, o que a fez a preferida para netbooks e tablets, na China. Pode rodar em velocidade escalvel de 60 MHz a 1500 MHz. Tem processador de vdeo MALI 400 que permite rodar vdeo de 2160 pixels de largura, 4 vezes a resoluo full HD. Possui sada mini HDMI,

permitindo que se ligue TV ou monitor grande. Tem duas portas USB 2.0 e dois slots de carto MicroUSB (que o chineses chamam de TF Card). praticamente prova de bricking (quando voc transforma seu dispositivo num tijolo, ao queimar de forma errada uma ROM). A instalao de novo sistema feita pela conexo USB, atravs de um programa para Windows LiveSuitPack.exe, distribudo pela Allwinner. Segundo algumas fontes, o Allwinner A10 d boot automaticamente em novo sistema instalado no carto MicroSD. Isto uma notcia excelente mas ainda no testei. No BC1003, o factory reset s funciona com mouse ou teclado USB, e no com as teclas power e volume do som como padro do Allwinner A10, o que me leva a acreditar que seu sistema Android foi desenvolvido para netboooks. Quase mandei para a assistncia tcnica, at descobrir este detalhe num post escondido do frum do site XDA Developers.

Softwares
O BT1003 vem com Android 4.04 Ice Cream Sandwich e, alm dos programas padro, tem pr-instalados: Adobe Reader, Facebook, Skype, leitor de arquivos DOC Documents To Go, ES Task Manager, e os jogos Fruit Ninja e Angry Birds. A primeira coisa que eu instalei foi o Link2SD, para permitir a instalao de mais programas num carto SD sem problemas de falta de memria interna. Mas ele exige sempre um segundo boot rpido para reconhecer o carto no slot MicroSD. Tambm coloquei o Quick System Info Pro, que me d vrias informaes sobre o sistema e me permite fazer backup dos aplicativos. Instalei e rodei sem problemas o Google Earth, Google Currents, Google Chrome, Freedly e o leitor de ODF Andropen Office.

Multimdia
A cmera fraqussima. H apenas a frontal, de resoluo VGA de 640 x 480 pixels. Mas em multimdia, o tablet BC1003 bom: toca udio em formatos MP3; WAV; WMA; AAC; AAC+; MP2; OGG; M4A; FLAC e 3GP; e vdeos em formatos AVI, H.264, DIVX, XVID, rm, rmvb, MKV, WMV, MOV, MP4, H.264, MPEG, DIVX, XVID, e FLV em formato at resoluo full HD 1080P. A reproduo excelente, sem travadinhas, graas ao chip especializado CedarX da Allwinner. O udio AC97 tambm tem qualidade muito boa, mesmo nos fones baratos que acompanham o equipamento. O gravador de udio salva em MP3.

Conectividade
As possibilidades de conexo so o forte do BC1003. um dos poucos tablets que possuem conexo Ethernet a cabo. Tem duas entradas

USB, uma para se conectar a PCs, quando visto como armazenamento de massa, e outra USB OTG (On The Go), onde podem se espetados pen drives, teclados e mice. Ainda tem um slot de carto MicroUSB, chamado de carto TF pelos chineses, e uma sada mini HDMI, para se conectar TV full HD. Para completar, tem um GPS com uma antena imantada com cabo longo que pode ser colocada do lado de fora (no teto) de um veculo, para melhor recepo.

Concluso
O tablet BT1003 tem uma excelente relao custo/benefcio. Pode ser usado com tranquilidade para navegar na internet, ler ebooks, jogar em 3D, ouvir msica e passar vdeo HD na televiso. Com teclado e mouse USB, pode ser usado at mesmo para trabalhos pequenos em edio de texto e planilhas (um teclado ABNT2 exige aplicativos como o External Keyboard Helper, R$ 4,95). Sua hackabilidade enorme, e desenvolvedores podero lanar futuramente atualizaes e mods (modificaes) do Android.

Pontos positivos

Preo. Tela de 10 polegadas, 1024 x 600 pixels. RAM de 1GB e armazenamento de 4GB. Android 4.04. Chip Allwinner A10, o processador ARM mais hackevel que existe. Grande desempenho em rodar vdeos. J vem rooted. GPS externo imantado com excelente recepo. Conexo FastEthernet para rede cabeada. 2 portas USB Uma sada HDMI. Aceita conexo 3G por dongle USB.

Pontos negativos

Tela resistiva, que exige presso para funcionar. O multitoque da tela terrivelmente errtico. Bateria tem pouca durao. No possui Bluetooth. Cmera subdimensionada, de 0.3 megapixels, VGA 640 x 480 pixels.

Referncias

Yones. Fabricante em <http://www.yonesnav.com/products/bc1003.php> CWM 6.0.2.8 for Allwinner A10 & A13 Tablets v2a. Post de frum em <http://forum.xda-developers.com/showthread.php?t=2189640>

Using hardware devices. Android Developers. <http://developer.android.com/tools/device.html> Allwinner A10 ARM Cortex A8 SoC. <http://rhombustech.net/allwinner_a10/> Allwinner A10 general FAQ. <http://tabletrepublic.com/forum/cortex-a8allwinner-a10/allwinner-a10-general-faq-non-tablet-specific-556.html> Allwinner A1X. Verbete na Wikipedia. <http://en.wikipedia.org/wiki/Allwinner_A1X> Kocaso. Imagens do firmware para recuperao do sistema (no testadas). <http://www.kocaso.com/support.html>

Como fazer backup do sistema Android do tablet BC1003 (Wei Wide PRO 10)
Por Jos Antonio Rocha 2 de maio de 2013Assunto: Android, Celular, Linux

O tablet BT1003 usa chip Allwinner A10, um processador ARM extremamente hackevel. No entanto, brincar com isto pode ser perigoso pelo risco de brickar (transformar num tijolo de alta tecnologia) o dispositivo. Mas o Allwinner praticamente prova de tijolamento, desde que se tenha as ROMs originais e se possa queim-las de volta no tablet. Como o fabricante Yones no disponibiliza a ROM em seu site, eu mesmo precisei gerar estes arquivos. Fiz um mapa mental com o esquema da imagem da ROM do Allwinner 10 para melhorar o entendimento: O backup do sistema Android no tablet BC1003 feito pela shell do dispositivo, que eu acesso com a linha de comando na shell do Linux:
adb shell

O adb parte do Android Development Kit. Para descobrir quais so as parties do Android, j na shell do tablet, uso o seguinte comando para listar o diretrio de dispositivos de bloco /dev/block:

ls /dev/block

Com isto, verifico que no h dispositivos com mtd no nome. Assim, o tablet no usa o subsistema mtd para gerenciar memria flash. Em vez disto, h parties com nand. Isto indica que a memria interna de 4 GB usa o esquema de parties eMMC e que as parties so: nanda nandb nandc nandd nande nandf nandg nandh nandi um sistema Allwinner de 9 parties NAND. Este nmero importante se eu escolher instalar alguma ROM Cyanogen, por exemplo, que possui verses para Allwinner de 9, 10 e 11 parties NAND. Para descobrir o que h em cada partio, consulto o subsistema Linux /proc, que tem informaes sobre o dispositivo. Uso o comando mount ou:
cat /proc/mounts > /mnt/sdcard/mounts.txt

que gera um arquivo texto listando todas as parties montadas:


rootfs / rootfs ro,relatime 0 0 tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0 devpts /dev/pts devpts rw,relatime,mode=600,ptmxmode=000 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0 tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0 /dev/block/nandd /system ext4 ro,relatime,user_xattr,barrier=0,data=ordered 0 0 /dev/block/nande /data ext4 rw,nosuid,nodev,noatime,user_xattr,barrier=0,journal_checksum,data=ord ered,noauto_da_alloc 0 0 /dev/block/nandh /cache ext4 rw,nosuid,nodev,noatime,user_xattr,barrier=0,journal_checksum,data=ord ered,noauto_da_alloc 0 0 /dev/block/vold/179:2 /data/sdext2 vfat rw,relatime,uid=1000,gid=1000,fmask=0133,dmask=0002,allow_utime=0020,code page=cp437,iocharset=ascii,shortname=mixed,errors=remount-ro 0 0 /dev/block/vold/93:64 /mnt/sdcard vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask= 0702,allow_utime=0020,codepage=cp437,iocharset=ascii,shortname=mixed,utf8,e rrors=remount-ro 0 0 /dev/block/vold/93:64 /mnt/secure/asec vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask= 0702,allow_utime=0020,codepage=cp437,iocharset=ascii,shortname=mixed,utf8,e rrors=remount-ro 0 0 tmpfs /mnt/sdcard/.android_secure tmpfs ro,relatime,size=0k,mode=000 0 0 /dev/block/dm-0 /mnt/asec/br.gov.caixa.webcaixa-1 vfat ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=c p437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0

/dev/block/dm-1 /mnt/asec/com.antutu.CpuMasterFree-1 vfat ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=c p437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0 /dev/block/dm-2 /mnt/asec/org.freeandroidtools.root_checker-1 vfat ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=c p437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0 /dev/block/dm-3 /mnt/asec/com.apedroid.hwkeyboardhelperdemo-1 vfat ro,dirsync,nosuid,nodev,relatime,uid=1000,fmask=0222,dmask=0222,codepage=c p437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro 0 0

Tambm posso olhar as mensagens do kernel com o comando:


cat /proc/kmsg

No incio das mensagens, aos 2 segundos de boot, aparecem as linhas com os nomes das parties:
[ 2.219177] The -419187676 [ 2.219191] The [ 2.219203] The [ 2.219214] The [ 2.219225] The [ 2.219235] The [ 2.219246] The -419187292 [ 2.219257] The [ 2.219268] The [ 2.219279] The 0 disk name = bootloader, class name = DISK, disk size = 1 2 3 4 5 6 disk disk disk disk disk disk name name name name name name = = = = = = env, class name = DISK, disk size = -419187612 boot, class name = DISK, disk size = -419187548 system, class name = DISK, disk size = -419187484 data, class name = DISK, disk size = -419187420 misc, class name = DISK, disk size = -419187356 recovery, class name = DISK, disk size =

7 disk name = cache, class name = DISK, disk size = -419187228 8 disk name = UDISK, class name = DISK, disk size = -419187164 8 disk size = 4917248

Mas o tamanho das parties incompreensvel. Para obter esta informao, uso o comando:
cat /proc/partitions > /mnt/sdcard/partitions.txt

que gera um texto com o tamanho real das parties:


major 7 7 7 7 93 93 93 93 93 93 93 93 93 179 179 179 254 254 254 254 minor #blocks name 0 4190 loop0 1 2111 loop1 2 2111 loop2 3 2111 loop3 0 81920 nanda 8 16384 nandb 16 32768 nandc 24 524288 nandd 32 384000 nande 40 16384 nandf 48 32768 nandg 56 327680 nandh 64 2458624 nandi 0 1921024 mmcblk0 1 961467 mmcblk0p1 2 959488 mmcblk0p2 0 4189 dm-0 1 2110 dm-1 2 2110 dm-2 3 2110 dm-3

A estrutura de parties do BT1003 a seguinte: N Nome do dispositivo Tamanho 80MB Rtulo da partio Sistema de arquivo Comentrios Tabela de parties nos primeiros 16 MB e arquivos para assistir o

0 nanda

bootloader vfat

bootloader nos outros 64 MB. Imagens do status da bateria, uboot.bin, script.bin e .ini ficam aqui. 1 nandb 2 nandc 3 nandd 4 nande 5 nandf 6 nandg 7 nandh 16MB 32MB 504MB 375MB 16MiB 32MiB env boot system data misc recovery raw raw ext4 ext4 raw raw ext4 Ambiente para assistir o u-boot. Tem o kernel e seu ramdisk no formato ANDROID mkbootimg. Partio /system do Android. Partio /data. Partio usada para passar dados entre vrios estgios da sequncia de boot (por exemplo, boot no modo recovery, fastboot etc). Partio recovery com o kernel. Partio montada como /cache.

320MiB cache

8 nandi 2,401GB UBOOT vfat Partio montada como /mnt/sdcard. As parties importantes so bootloader, env, boot, system e recovery. As outras so recriadas quando do primeiro boot e configurao.

Bootloader e environment
Dentro do shell do tablet, uso o comando dd para copiar as parties para o carto MicroSD:
dd if=/dev/block/nanda of=/sdcard/bootloader.img dd if=/dev/block/nandb of=/sdcard/env.img

O comando dd mais informativo, mas tambm posso usar o comando cat:


cat /dev/block/nanda > /sdcard/bootloader.img

Depois de copiadas as parties para arquivos img no carto MicroSD, pode-se conectar o cabo USB e copi-los para o PC desktop, para manipulao. Tambm posso fazer isto do shell Linux ou Windows com o Android Debug Bridge (adb). Abaixo, os comandos esto juntos numa mesma linha para facilitar. A linha com o prompt $ o comando, as outras linhas so os resultados. A linha de comandos gera o backup, copia para o PC e apaga a imagem do carto SD para liberar espao. Primeiro, o bootloader:
$ adb shell dd if=/dev/block/nanda of=/sdcard/bootloader.img && adb pull /sdcard/bootloader.img && adb shell rm /sdcard/bootloader.img 163840+0 records in 163840+0 records out 83886080 bytes transferred in 19.563 secs (4287996 bytes/sec)

e, depois, o ambiente de boot:


adb shell dd if=/dev/block/nandb of=/sdcard/env.img && adb pull /sdcard/env.img && adb shell rm /sdcard/env.img 32768+0 records in 32768+0records out 16777216 bytes transferred in 1.507 secs (11132857 bytes/sec)

O bootloader uma imagem no sistema de arquivo vfat e pode ser montada no Ubuntu com os comandos:

sudo mkdir /media/cranebootloader sudo mount -t vfat -o loop bootloader.img /media/cranebootloader

Com isto, posso entrar no diretrio /media/cranebootloader, investigar e extrair arquivos desta imagem. O env o espao para alguns parmetros do boot. um arquivo binrio com strings terminadas em zero. Aberto por um editor hexadecimal, ele revela os seguintes parmetros:
bootdelay=0 bootcmd=run setargs boot_normal console=ttyS0,115200 nand_root=/dev/nandc mmc_root=/dev/mmcblk0p4 init=/init loglevel=8 setargs=setenv bootargs console=${console} root=${nand_root} init=${init} loglevel=${loglevel} boot_normal=nand read 40007800 boot;boota 40007800 boot_recovery=nand read 40007800 recovery;boota 40007800 boot_fastboot=fastboot recovery_key_value_max=0x13 recovery_key_value_min=0x10 fastboot_key_value_max=0x8 fastboot_key_value_min=0x2

Boot e recovery As parties boot e recovery so copiadas com os comandos:


$ adb shell dd if=/dev/block/nandc of=/sdcard/boot.img && adb pull /sdcard/boot.img && adb shell rm /sdcard/boot.img 65536+0 records in 65536+0 records out 33554432 bytes transferred in 10.160 secs (3302601 bytes/sec) 5026 KB/s (33554432 bytes in 6.518s) $ adb shell dd if=/dev/block/nandg of=/sdcard/recovery.img && adb pull /sdcard/recovery.img && adb shell rm /sdcard/recovery.img 65536+0 records in 65536+0 records out 33554432 bytes transferred in 6.065 secs (5532470 bytes/sec) 4850 KB/s (33554432 bytes in 6.755s

Elas esto num formato especial do Android, composto por um cabealho de 2kb, o kernel Linux e um ou dois ramdisks com arquivos bsicos necessrios para o boot. Para se trabalhar nestes arquivos geralmente se modifica o ramdisk deve-se separar os arquivos com utilitrios desenvolvidos por hackers. Estes arquivos tm a seguinte estrutura: rea Header bootMagic kernelSize 8 4 ASCII Nome Tamanho em bytes Formato Comentrios Identificador do tipo de estrutura do arquivo (assinatura). Contm ANDROID!

long int Tamanho do kernel em bytes long int Endereo de carga do kernel na memria RAM do dispositivo

kernelLoadAddr 4

ram1Size

long int Tamanho do ramdisk 1 em bytes long int Endereo da RAM onde carregar o ramdisk 1 Endereo da RAM onde carregar o ramdisk 2

ram1LoadAddr 4 ram2Size 4

long int Tamanho do ramdisk 2 em bytes long int

ram2LoadAddr 4 tagsAddr pageSize unused1 unused2 bootName cmdLine id Kernel kernel 4 4 4 4 16 512 6

long int Endereo de tags do kernel long int Tamanho das pginas do flash long int No usado long int No usado ASCII ASCII ASCII Nome do system-on-chip (placa do hardware) Linha de comando do kernel. Ser usada mais tarde na recriao da imagem Identificador (?)

kernelSize binrio Kernel Linux Inicia com os bytes hexa 1F 8B (assinatura de ramdisk). Comea na pgina acima do kernel. Para calcular o tamanho do kernel em pginas, a frmula binrio : kernelSizeInPages = (kernelSize + pageSize 1) / pageSize. Para calcular o incio do ramdisk, a frmula : ram1Addr = (1 + kernelSizeInPages) * pageSize

RAM disk 1

ramdisk1

ram1Size

RAM ramdisk2 ram2Size binrio Raramente existe disk 2 O kernel e o ramdisk so extrado pelos scripts em Perl extractkernel.pl e extract-ramdisk.pl, criados pelo hacker Lox:
extract-kernel.pl boot.img extract-ramdisk.pl boot.img

O segundo script extrai e recria a estrutura de pastas do ramdisk, que est armazenada no formato cpio.gz. Este trabalho tambm pode ser feito com um editor de arquivos binrios como Bless Hex Editor.

System
A partio system contm todo o sistema Android. O backup, que bem mais demorado que os anteriores leva mais de 5 minutos , feito com o comando:
$ adb shell dd if=/dev/block/nandd of=/sdcard/system.img && adb pull /sdcard/system.img && adb shell rm /sdcard/system.img 1048576+0 records in 1048576+0 records out 536870912 bytes transferred in 149.046 secs (3602048 bytes/sec) 4738 KB/s (536870912 bytes in 110.635s)

A partio system est no formato ext4 sparse e deve ser convertida pelo programa simg2img (Linux) para ext4 normal, antes de ser montada pelo comando:
simg2img system.img system2.img sudo mkdir /media/cranesystem sudo mount -t ext4 -o loop system2.img /media/cranesystem

Depois de montadas, pode-se copiar a estrutura de arquivos para outro lugar e edit-los a gosto.

Recriando imagens
Feitas as mudanas, pode-se recriar as images do BT1003. O boot.img se recria assim, com os programas Linux mkboot:

# mkbootfs boot.img-ramdisk | gzip > ramdisk-boot # mkbooting --kernel boot.img-kernel --ramdisk ramdisk-boot --base 0x40000000 --cmdline 'console=ttyS0,115200 rw init=/init loglevel=6' -o new-boot.img

Atravs do shell, copia-se de volta as imagens para a partio correspondente, desde que o boot esteja intacto. Por exemplo, a imagem do sistema Android:
dd if=/sdcard/system.img of=/dev/block/nandd

Referncias

Android tablet info. Pgina de jovem doutor escocs. Melhor fonte de informaes tcnicas e tutoriais sobre esta classe de tablets. Tambm tem utilitrio de converso de imagens bitmapa (fotos) para formatos usados pelo Android. <http://www.imajeenyus.com/computer/20130301_android_tablet/android/index .html> Android/partitions. <http://linux-sunxi.org/Android/partitions>. How to edit init.rc in Android. <http://droidcore.blogspot.com.br/2012/12/how-to-edit-initrc-in-android.html>. McGHEE. Rob. Creating an Android update.zip package. <http://www.robmcghee.com/android/creating-an-android-update-zippackage/>. HOWTO: Unpack, Edit, and Re-Pack Boot Images. <http://androiddls.com/wiki/index.php?title=HOWTO:_Unpack%2C_Edit%2C_and_RePack_Boot_Images>. Generating key. <http://android-dls.com/wiki/index.php? title=Generating_Keys> How to create Android update zip package. <http://www.londatiga.net/it/how-to-create-android-update-zip-package/> Android code. <https://android.googlesource.com/platform/bootable/recovery/ +/android-4.0.4_r1/updater/install.c> How create update.zip. <http://modmymobile.com/forums/402-generalmotorola-android/561090-how-create-update-zip.html>

Como aumentar a memria do Android


Por Jos Antonio Rocha 10 de fevereiro de 2013Assunto: Geral Os dispositivos Android de baixo custo (entry point, ou ponto de entrada) tm pouca memria disponvel aos aplicativos. Isto limita a quantidade e qualidade dos apps que podem ser instalados. Por exemplo, meu Wei Dream ou o Galaxy 5 de minha esposa no poderiam rodar tranquilamente o Google Currents, programa que mostra sites de notcias como uma revista. O Currents gasta muita memria porque faz cache das informaes num grau que pode chegar aos 100 MB. Para resolver isto, existe o aplicativo Link2SD. Este programa gratuito transfere os aplicativos, os arquivos DEX (arquivos com o aplicativo otimizado), as bibliotecas (libraries) e os arquivos temporrios para o carto SD, e cria links simblicos na memria do telefone. Para isto, necessita ter acesso root. Link simblico um recurso dos sistemas operacionais tipo Unix. Cria-se um arquivo que no um arquivo, mas uma ligao ao arquivo verdadeiro em outro lugar. O link simblico se comporta como se fosse o arquivo original, s que ocupando pouqussimo espao. O que o Link2SD faz criar links simblicos na memria interna do telefone ou tablet apontando para os arquivos verdadeiros no carto SD. No meu Wei Dream, o uso de memria interna baixou de 160 MB para 111 MB. No Galaxy 5, baixou de 140 MB para 48 MB. Alm de permitir a instalao de mais aplicativos, isto faz com que o cache dos aplicativos possa crescer muito mais no carto SD, evitando os terrveis avisos de falta de memria. Para instalar o Link2SD necessrio se ter uma segunda partio no carto SD. No Windows meio complicado fazer isto. No Linux, uma moleza. Usei o programa gparted. Ele est na imagens de pendrive mas no instalado por default no desktop. Tive que instal-lo com o comando sudo apt-get install gpartd. Criei mais uma partio no carto SD com os seguintes passos: 1. Abri espao no SD para mais uma partio. Coloquei o carto MiniSD num adaptador, espetei o adaptador no PC desktop, abri o gparted, mudei o dispositivo para o carto SD:

2. Desmontei o carto SD que montado automaticamente:

3. Selecionei a nica partio, cliquei com o boto da direita e escolhi Redimensionar. Repare como os arquivos existentes esto todos no incio da partio (rea amarela clara). Isto permite que eu redimensione a partio sem problemas. O tamanho da rea liberada vai depender de quantos aplicativo pretende-se instalar. Algo razovel est entre 256 MB a 512 MB.

4. Selecionei o espao liberado (rea cinza), cliquei com o boto da direita e escolhi Criar partio. Escolhi o formato Fat16, compatvel com o Android de meu telefone.

5. Cliquei no boto de seta verde da janela principal do gparted para aplicar as modificaes. Depois de alguns minutos formatando a nova partio, a operao estava terminada. A seguir, rodei o aplicativo Link2SD e selecionei todos os aplicativos de usurios para serem transferidos ao carto SD e lincados na memria interna. O Link2SD s transfere arquivos de usurio ou arquivos de sistema que foram atualizados. No mexe nos arquivos de sistema originais. No entanto, ele permite que se apaguem os arquivos de sistema indesejados, o que sempre uma boa pedida para apagar aplicativos chineses ou bloatwares (programas inteis que incham o dispositivo) instalados pela operadoras de telefonia. O resultado da otimizao da memria aparece abaixo. Antes da otimizao estava assim:

A partio secundria no SD aparece como Armazenamento A2SD no meu Wei Dream, mas aparece como Armazenamento Secundrio no Galaxy 5. Depois de criar os links simblicos, o espao interno ficou assim:

Agora, quando eu instalo mais programas, o Link2SD move-os automaticamente para o SD. Abaixo a tela do Link2SD mostrando os dados e programas lincados:

O Google Drive e o Google Maps ocupariam 27 MB no espao interno, e agora tm espao vontade no carto SD. Este aplicativo to bom que, apesar de ser gratuito, fiz uma doao de 5 dlares para o autor.

Referncias
1. Como aumentar a memria do Android. <http://www.mafagrafos.net/2013/02/04/aumentar-memoria-interna/> 2. Use o Link2SD para aumentar o espao livre na memria interna de seu Android!. Tutorial para reparticionar com Windows. <http://forum.techtudo.com.br/perguntas/36491/use-o-link2sd-para-aumentar-oespaco-livre-na-memoria-interna-de-seu-android>.