mtk6577 manual de uso. version 6

44
Tengo un mtk6577 F9300 y tras muchas pruebas y calentamientos de cabeza he abierto un hilo sobre mi modelo. Esta info procede de esta web http://www.movilesdualsim.com/foro/threads/22396-Backup-firmware-SMARPHONE-F9300- mtk6577 , y pretende ser una guia/manual basica para todo el que empieza con un movil chino. En la direccion anterior teneis informacion ampliada de todo, aunque un poco desordenada pues se ha ido exponiendo mientras se conocia. Tener en cuenta que los pasos son comunes en todos los tlfs, aunque hay que bajarse el firmware especifico de nuestro tlf. Referente al soft para los quad core, en los enlaces que pondre son ultima version y he leido que son validos para ellos, PERO NO LO HE PROBADO, ASI QUE BUSCAR SI HAY UNA VERSION MAS RECIENTE. RECOMIENDO LEER TODO ESTO ANTES DE CAMBIAR CUALQUIER TIPO DE SOFTWARE DE NUESTRO MOVIL. AQUÍ EXPLICARE COMO SE HACE TODO Y PORQUE. Lo primero que debemos saber de los telefonos chinos es que existe la marca china que tiene soporte (bluebo, hdc, zopo, hero…) CON SU CONSIGUIENTE PRECIO SUPERIOR y existen las copias de otros fabricantes (y copias de fabricantes de otros fabricantes) , por supuesto a menor precio. Por mucho parecido que tenga nuesto telefono clon a nivel fisico como software NUNCA sera el original, por lo tanto no meterle un firmware que no esteis seguros o dejais eltelefono sin funcionar una buena temporada. Por lo tanto lo primero es conocer el modelo de nuestro telefono chino: para ello le quitais la bateria y lo tiene serigrafiado junto a los imei. Sin embargo a la hora de buscar el software tambien podemos guiarnos por lo que dice nuestro software, en concreto “CONFIGURACION>ACERCA DEL TLF>NUMERO DE MODELO”. Y OJO QUE HAY TLFS CON EL MISMO MODELO Y VARIAS VERSIONES DE TLF. De momento omitire poner capturas de pantalla pues hay mucha informacion sobre el tema en internet, aunque desarrollo un punto acerca de colaborar con esta guia. Para el uso de edicion utilizo Notepad++. Es freeware. INDICE 1.INSTALACION DE DRIVERS: a. Android usb phone (preloader, composite, o como quieras) b. driver mt65xx c. driver cdc serial d. driver manual: memoria masiva... e. reinstalar drivers. 2. BACKUP DE UNA ROM (FIRMWARE): a. Rotear el tlf. b. Crear el scatter file c. SP Flashtool d. Mtkdroidtool: metodo general e. Mtkdroidtool: full rom

Upload: antonio-huescar

Post on 08-Aug-2015

141 views

Category:

Education


15 download

TRANSCRIPT

Page 1: Mtk6577 manual de uso. version 6

Tengo un mtk6577 F9300 y tras muchas pruebas y calentamientos de cabeza he abierto un hilo sobre mi modelo. Esta info procede de esta web http://www.movilesdualsim.com/foro/threads/22396-Backup-firmware-SMARPHONE-F9300-mtk6577 , y pretende ser una guia/manual basica para todo el que empieza con un movil chino. En la direccion anterior teneis informacion ampliada de todo, aunque un poco desordenada pues se ha ido exponiendo mientras se conocia.

Tener en cuenta que los pasos son comunes en todos los tlfs, aunque hay que bajarse el firmware especifico de nuestro tlf. Referente al soft para los quad core, en los enlaces que pondre son ultima version y he leido que son validos para ellos, PERO NO LO HE PROBADO, ASI QUE BUSCAR SI HAY UNA VERSION MAS RECIENTE.

RECOMIENDO LEER TODO ESTO ANTES DE CAMBIAR CUALQUIER TIPO DE SOFTWARE DE NUESTRO MOVIL. AQUÍ EXPLICARE COMO SE HACE TODO Y PORQUE.

Lo primero que debemos saber de los telefonos chinos es que existe la marca china que tiene soporte (bluebo, hdc, zopo, hero…) CON SU CONSIGUIENTE PRECIO SUPERIOR y existen las copias de otros fabricantes (y copias de fabricantes de otros fabricantes) , por supuesto a menor precio. Por mucho parecido que tenga nuesto telefono clon a nivel fisico como software NUNCA sera el original, por lo tanto no meterle un firmware que no esteis seguros o dejais eltelefono sin funcionar una buena temporada.

Por lo tanto lo primero es conocer el modelo de nuestro telefono chino: para ello le quitais la bateria y lo tiene serigrafiado junto a los imei. Sin embargo a la hora de buscar el software tambien podemos guiarnos por lo que dice nuestro software, en concreto “CONFIGURACION>ACERCA DEL TLF>NUMERO DE MODELO”. Y OJO QUE HAY TLFS CON EL MISMO MODELO Y VARIAS VERSIONES DE TLF.

De momento omitire poner capturas de pantalla pues hay mucha informacion sobre el tema en internet, aunque desarrollo un punto acerca de colaborar con esta guia. Para el uso de edicion utilizo Notepad++. Es freeware.

INDICE

1.INSTALACION DE DRIVERS:a. Android usb phone (preloader, composite, o como quieras)b. driver mt65xxc. driver cdc seriald. driver manual: memoria masiva...e. reinstalar drivers.

2. BACKUP DE UNA ROM (FIRMWARE):a. Rotear el tlf.b. Crear el scatter filec. SP Flashtoold. Mtkdroidtool: metodo generale. Mtkdroidtool: full romf. Adaptar copia a SPflastoolg. Script sh: con gscript liteh. Aplicaciones de backup: por ejemplo titanium backup.i. backup manual: comando ddj. Backup manual con Script sh: ejecutar script personalizado.

3. METER UNA ROM (FIRMWARE):a. Secciones a introducir: funcion de cada seccion. b. SPFlashToolc. con recovery (ver 6c)d. Meter secciones de una rom con comando dd

4. Enlaces para descarga de firmware y software.

Page 2: Mtk6577 manual de uso. version 6

5. OTROS PUNTOS DE INTERES a. Añadir/eliminar app de sistema MANUALMENTE (en la carpeta system)b. Eliminar app de sistema con mtkdroidtools.c. Instalar aplicaciones para tunear o sustituir a otras (por ejemplo el launcher)d. Leer el contenido de system.imge. Cambiar el logo.bin y boot_logo con logobuilder 1.3

6. CYGWIN y ANDROID KITCHENa. Instalacionb. Crear Recovery ClockWordMod con CYGWINc. Manual CWMd. Deodexar la rom con Android Kitchene. Modificar app (apktools, apkmanager)f. Modificar un backup de CWM

7. ADBa. Comandos basicos en androidb. Ejemplo de copiar APK mediante ADB

8. Recuperar Imei9. Recalibrar bateria10. Backup de la agenda de contactos11. GPS12. Actualizacion del manual: colaboracion de TODOS.12+1. Personalizar tu diccionario Android

RECOMENDADO BATERIA CARGADA MINIMO AL 50 %: LUEGO QUE NO HAYA SUSTOS POR ESTO.

Punto 1. INSTALACION DE DRIVERS La primera confusion puede surgir al querer instalar el telefono en ell pc. El telefono puede ser detectado de cuatro maneras diferentes:1a . Android usb Phone : Telefono apagado y conectado al pc: en este caso los drivers a instalar deben ser los USB PRELOADER que correspondan a tu telefono (en realidad son genericos). Otra cosa: yo tengo un mtk6577, para el 6575 vale pero para los 6589 no se si son los mismos drivers.

1b . Driver mt65xx : Telefono encendido y MODO DEPURACION USB esta activo: en este caso debemos instalar los drivers ADB ( google Android usb). Con este modo puedo controlar el telefono completamente desde el pc (numerosos programas).

1c . Driver cdc Serial : Si arrancamos el tlf pulsando power + volumen_up accedemos a un menu que nos da a elegir arranque en recovery o fastboot. Si conectamos el tlf ahora nos aparecen dos drivres nuevos: cdc serial y MT65xx androd phone: el puerto com y el dispositivo conectado al com, nuestro tlf. Es un puerto com de toda la vida, me explico: usb es “com avanzado”, tiene mas velocidad, es multipuesto…..pero el com normal es el DB9. Podriamos decir que la conexión fisica usb emula un com DB9 (serial mas lento). Se comporta igual que el punto 1ª pero a menor velocidad.

1d . Driver “manual” : Telefono encendido y MODO DEPURACION USB esta desactivado: en este caso nosotros le indicaremos manualmente al telefono como queremos que funcione: almacenamiento masivo, multimedia…..Estos drivers ya lo lleva integrados Windows por lo que no es necesaro proporcionarselos.

Page 3: Mtk6577 manual de uso. version 6

Una aclaracion en este punto: cuando le decimos almacenamiento masivo puede detectarnos 1 o 2 unidades, ¿de que depende?. Una unidad es nuestra tarjeta fisica SDCARD y la siguiente es la del almacenamiento del telefono. Es posible que no tengais almacenamiento de tlf (jiayu G2S) porque el propio fabricante no deja espacio (no crea una particion fat32 de windows) para guardar datos en el tlf asi que estais obligados a meterle una tarjeta de memoria externa. Si tuvierais esta particion se llama “almacenamiento de tlf” y/o “sdcard2”.

NOTA ADICIONAL: a la hora de instalar los drivers he comprobado que no todos tiene el mismo nombre una vez instalados. Por lo tanto, si comprobamos que hay comunicación con nuestro terminal no preocuparse por el nombre, aunque si os descargais ultimas versiones siempre es mejor.

http://www.4shared.com/rar/UpuoCWrv/drivers_MTK6577.html

http://www.4shared.com/rar/b4RykL2E/mediatek_drivers_mtk657x.html

1e . Reinstalar drivers : Cuando conectamos el movil apagado para usar sp flashtool, windows me lo detecta en un numero de puerto y luego me lo instala en otro diferente. No se porque, pero tampoco me aparece en el administrador de dispositivos una vez instalado. Si quereis cambiar los driver preloader que instalasteis en windows, abris "administrador de dispositivos" de windows, abris la seccion " puertos (com y lpt)", conectais vuestro movil sin bateria con el cable usb, conectais la bateria y por un momento lo vereis detectado en el " administrador de dispositivos " de windows. Entonces pinchais dos veces sobre ello y se os abrira las propiedades y ahi podeis cambiar los drivers por otros si quereis (o incluso desistalar).

Punto 2. BACKUP DE LA ROM.

A no ser que nuestro telefono funcione mal de inicio, lo primero es hacer un backup de todo completo.

2a . Rotear el tlf : Ser root significa tener acceso a todo. Los tlf chino ya vienen con un explorador con acceso root (acceso a la carpeta principal, system, data….) llamado Root explorer (por play store teneis fx explorer y su add root). Si intentais entrar comprobareis que podeis, sin embargo si quereis hacer una copia no os dejara hacerla completa. Yo he probado varios programas pero el que no me ha fallado nunca ha sido MtkDroidTool. Podeis probar primero SRSroot, Root_with_Restore_by_Bin4ry_v3 y si no van seguis con Mtkdroidtools.

Para hacerlos root ello conecto el tlf como el punto 1b: modo depuracion activo.

Lo que ocurre es que los moviles chinos vienen “pre-roteados” (ya tienen su, superuser y root explorer), de manera que si tenemos acceso a todo con un explorador root, por eso algunos programas nos dicen que ya somos root y otros se dedican a sobreescribir el fichero su y superuser. E incluso exploradores de archivos que nos dicen que leen root tambien fallan. Y esto es debido a que aun falta modificar el boot.ini y recovery.ini para que sea detectado como root completo.

SRSROOT Os descargais el programa, lo instalais y le dais a rootear. Si os aparece en la pantalla del movil restablecer datos, aceptais y listo. Se reinicia y ya esta. http://www.srsroot.com/

ROOT_with_Restore Os descargais el programa, lo descomprimis y ejecutais Runme.bat. Si vuestro modelo de movil lo identificais en pantalla elegis la opcion concreta, en caso contrario elegis la opcion 4. Si Os aparece en la pantalla del movil restablecer datos, aceptais y listo. Se reinicia y ya esta. http://www.4shared.com/rar/YmQ83vnS/root_with_restore_by_bin4ry_v3.html

MTKDROIDTOOL 2.45 El proceso root en mtkdroidtool es copiar su, superuser, rootexplorer y modificar el boot.img y system.img.. Los dos primeros es para controlar las aplicaciones que piden acceso root y tengamos el conocimiento de ello, de tal manera que le demos permiso o no. El tercero es copiar el explorador root a /system y el cuarto y quinto es para tener acceso a todo. Ejecuto mtkdroidtools y no me muestra los valores de "Uboot built" y "lcd driver IC" y como consecuencia en la siguiente pantalla no me habilita la pestaña "BACKUP". Pues ahora pulso sobre el boton ROOT, y entonces ya me muestra los valores que faltaban y me habilita la opcion de BACKUP. Ahora pulso sobre BACKUP y me hace la copia completa en un subdirectorio de mi programa mtkdroidtools llamado “backups”. Una vez terminado vamos a rootearlo.

Page 4: Mtk6577 manual de uso. version 6

Podreis observar que junto la pestaña de "Recovery and Boot" tenemos tres opciones. Seleccionamos "To choose the boot.img file" y pulsamos sobre la pestaña de "Recovery and Boot". Ahora le indicamos la ruta de la copia hecha anteriormente para que encuentre los ficheros boot.img y recovery.img. En este momento los modifica para que seamos root y cuando nos pregunte si queremos meterlos al tlf le decimos que si a los dos, pero seleccionamos no al arrancar en el recovery. Reiniciamos y listo.

Tambien podemos hacer lo siguiente: una vez hecha la copia desconectamos el tlf. Observar que junto la pestaña de "Recovery and Boot" tenemos solo 1 opcion. Seleccionamos "To choose the boot.img file" y pulsamos sobre la pestaña de "Recovery and Boot". Ahora le indicamos la ruta de la copia hecha anteriormente para que encuentre los ficheros boot.img y recovery.img. En este momento los modifica para que seamos root y los guarda en un subdirectori llamado "recovery". Conectamos el tlf, seleccionamos "Install already prepared files" y seleccionamos los archivos parcheados de nuestro directorio "recovery", le decimos que los meta y cuando pregunte reiniciar en recovery le decimos que no. Reiniciamos manualmente nosotros el tlf.

Si tuvieramos alguna pega, antes del proceso pulsamos sobre la pestaña ROOT para ser root temporales (esta pestaña solo saldra si el tlf detecta que no somos root, en caso contrario no la muestra). Si pulsamos sobre SuperUser nos reinstala rootexplorer, su, mobileuncle tools y superuser. En este ultimo caso tenemos dos a elegir, seleccionamos una y ya esta. La funcion de los dos es la misma, solo que son de fabricantes diferentes: euchainfire (mas opciones de personalizacion) y noshufou. Podeis buscarlos por Playstore. Respecto a mobileuncletools podeis descargar la ultima version tambien de playstore y sustituirla por la instalada. Si quereis tener las ultimas versiones en mtkdroidtool, descargarlas de playstore y copiarlas al directorio "files" de mtkdroidtools (manteniendo el mismo nombre).

Ahora ya deberia mostrar todos los valores en pantalla el programa mtkdroidtools. http://www.4shared.com/rar/D_qa7Soz/mtkdroidtools_v245.html

He escrito que los smartphone chinos ya vienen “prerooteados” (porque tenemos acceso al directorio raiz, tenemos su y superuser). VALE MUY BIEN, ¡PERO NO PUEDO ROOTEAR EL MIO! El metodo a elegir siempre es empezar por el mas sencillo. Primero por SRSROOT y Root_with_restore, y despues con mtkdroidtools ya que activando el modo depuracion lo hacemos. Pero en el caso de que tengamos root denegado en el boot.img y el recovery.img (cualquier modo de inicio de android), obviamente no nos dejara acceder al directorio raiz de ninguna manera ni con ningun programa mientras lo intentemos con el tlf encendido, por lo que debemos hacerlo con SPFlashTool. Con este programa podemos extraer todos los datos porque lo hacemos con el tlf apagado, los modificamos para root y los volvemos a meter de nuevo. Y entonces ya no deberiamos tener problemas, pues arrancamos con las modificaciones hechas.

Y ademas hay dos fabricantes de superuser: euchainfire (mas opciones de personalizacion) y noshufou. Verificar que solo tenemos un programa de este tipo no vaya a ser que le demos permisos con uno y el otro lo cape.

2b. Generar el scatter file : El primerpaso que debemos hacer es generar el fichero scatter de nuestro telefono. El firmware se compone de varias partes ( secciones o direccionamiento) y este fichero indica el inicio y final de cada una. OJO NO TODOS LOS SCATTER SON IGUALES, es de cajon: no todos los telefonos son iguales. Para generarlo hay varias formas, pero aquí explicare como se hace con mtkdroidtools y mtkromstudio: a. Mtkdroidtool. Conectamos el telefono en modo adb, y arrancamos el programa. Un vez detectado el movil en el programa nos aparece un boton “BLOCKS MAP”. Pinchamos sobre el y nos aparece la informacion del fichero scatter. Ahora le damos a “Create scatter file” y lo salvamos. No lo he dicho aun, pero la correcta organización e identificacion de carpetas y archivos es primordial. El programa usa nombres genericos, po reso debemos tener claro donde lo guardamos. b. MtkRomStudio. Este programa crea el scatter desde un fichero .info. ¿de donde saco el fichero info? Pues del telefono. Y esto es manualmente. Vamos al directorio /PROC de nuestro telefono y alli hay un fichero quese llama DUMCHAR_INFO. Lo copiamos en la sdcard, conectamos el telefono en modo almacenamiento masivo y copiamos este fichero a nuestro pc. Para que nos lo reconozca el programa debemos sustituir el guion bajo por un punto (extension info = DUMCHAR.INFO). Abrimos elprograma mtkromstudio, pulsamos “CREATE ROM” , seleccionamos nuestro fichero renombrado y automaticamente nos da la opcion de guardado del fichero scatter de nuestro movil. Observar que si no

Page 5: Mtk6577 manual de uso. version 6

conectamos nuesto telefono al pc y arrancamos mtkdroidtool, tambien tenemos la opcion de generar el scatter en offline. http://www.4shared.com/archive/E8eGP0yy/mtk_rom_studio_1177301.html

2c . Backup con SPFlastool : Spflastool es el programa utilizado para hacer copiar el soft o extraerlo del tlf. http://www.4shared.com/zip/tg5llCpp/sp_flash_tool_v313040119.html

De momento no conectamos el telefono al ordenador. Una vez que tenemos el fichero scatter creado ahora toca configurar las secciones a leer. Para ello nos valemos del punto proceso 1. Cuando hemos abierto mtkdroidtools y hemos pulsado sobre “BLOKCS MAP” o hemos abierto MtkRomStudio y hemos abierto el fichero info, inmediatamente se nos aparece en pantalla una tabla (con filas y columnas), la cual nos muestra todo el mapa de memoria de nuestro telefono. Pues bien, estos valores seran los que nos serviran para configurar flashtool para hacer la lectura de todas las secciones. Los valores de esta tabla esta indicada en hexadecimal. Podeis hacer una prueba y asi os familiarizais un poquito con hexadecimal los que lo desconocen. Abrir calculadora de windows y la poneis en hexadecimal (Menu Ver>Programador).

El mapa de memoria del F9300: os saldra algo parecido (fichero firmware.info: /proc/dumchar_info):

Nombre…………..tamaño…………………Inicio…………………………..particionpreloader 0x0000000000040000 0x0000000000000000 2 /dev/misc-sddsp_bl 0x00000000005c0000 0x0000000000040000 2 /dev/misc-sdmbr 0x0000000000004000 0x0000000000000000 2 /dev/block/mmcblk0ebr1 0x0000000000004000 0x0000000000004000 2 /dev/block/mmcblk0p1pmt 0x0000000000400000 0x0000000000008000 2 /dev/block/mmcblk0nvram 0x0000000000500000 0x0000000000408000 2 /dev/block/mmcblk0seccfg 0x0000000000020000 0x0000000000908000 2 /dev/block/mmcblk0uboot 0x0000000000060000 0x0000000000928000 2 /dev/block/mmcblk0bootimg 0x0000000000600000 0x0000000000988000 2 /dev/block/mmcblk0recovery 0x0000000000600000 0x0000000000f88000 2 /dev/block/mmcblk0sec_ro 0x0000000000600000 0x0000000001588000 2 /dev/block/mmcblk0p2misc 0x0000000000060000 0x0000000001b88000 2 /dev/block/mmcblk0logo 0x0000000000300000 0x0000000001be8000 2 /dev/block/mmcblk0expdb 0x0000000000200000 0x0000000001ee8000 2 /dev/block/mmcblk0android 0x0000000020100000 0x00000000020e8000 2 /dev/block/mmcblk0p3cache 0x0000000007100000 0x00000000221e8000 2 /dev/block/mmcblk0p4usrdata 0x0000000039100000 0x00000000292e8000 2 /dev/block/mmcblk0p5fat 0x0000000083718000 0x00000000623e8000 2 /dev/block/mmcblk0p6bmtpool 0x0000000001500000 0x00000000ff9f00a8 2 /dev/block/mmcblk0

Si observamos la tabla, en cada fila se describe el mapa de memoria que ocupa cada seccion del firmware y como es logico estan correlativas sus posiciones. Pues en la columna SIZE (tamaño) comenzamos a sumar esos valores en orden y comprobaremos que coinciden exactamente con los valores de la siguiente otra columna, “part adress” para mtkromstudio y “scatter” para mtkdroidtools. Esta otra columna es la direccion de inicio de una region concreta. Podeis ir comprobando el nombre de la seccion por cada fila. Bien pues ahora toca abrir Spflastool y nos vamos a la pestaña “Read back”. Aquí iremos añadiendo manualmente todas las seccionesque queremos leer de nuestro dispositivo.

Le damos a “add” y el programa añade una seccion con nombre “rom_0”. Bien pulsamos dos veces sobre “rom_0” y la primera pregunta es el nombre con el que sera guardado. Ese nombre sera el nombre de la seccion a leer: respetar MAYUSCULAS y MINUSCULAS en el nombre. ( Nombres de las secciones: preloader.bin / DSP_BL / MBR / EBR1 / uboot.bin / boot.img / recovery.img / secro.img / logo.bin / system.img / cache.img / userdata.img )

Page 6: Mtk6577 manual de uso. version 6

Aceptamos y nos aparece una ventana para configurar la seccion. Seleccionamos “Read Page Only” y ahora toca introducir los valores de la tabla anterior explicada: “star adress” es el valor de inicio de la seccion a leer (“part adress” para mtkromstudio y “scatter”para mtkdroidtools) y continuacion en “Length” es el tamaño de esa seccion (“size” para ambos programas). Una vez introducidos aceptamos y ya tenemos configurado nuestra primera seccion a leer. Y continuamos con las demas.

Nota: podemos escribir los valores en decimal y los pasa a hexadecimal automaticamente, pero es mas lioso. Esto lo dejo para el comando dd.

Una vez configuradas todas, si pulsamos sobre “Read Back” nos pide nuestro fichero scatter, pues bien en la pestaña “download” del programa, observamos que solo tenemos cargado (y lo hace el propio programa) un fichero. A continuacion pulsamos sobre el boton “Scatter-loading” y nos pide la ubicación de nuestro fichero scatter creado anteriormente (en realidad esto es lo primero hacer). Una nota sin importancia: observar la tonteria de tener que cargar este fichero, pues es trabajar 2 veces. Lo suyo hubiera sido cargar el fichero y seleccionar las secciones a descargar, sin embargo te obliga a meter manualmente las direcciones. Bien MUCHO OJO CON LAS DIRECCIONES A LEER, ASEGURARSE BIEN PARA TENER UNA COPIA EN CONDICIONES. De todas maneras no preocuparse si no haceis bien este punto porque hay otras formas de hacerlo de manera automatica.

Una vez configuradas las secciones pulsamos sobre el boton “Readback” (tiene una flecha azul encima), y el programa queda en modo espera. Ahora con el telefono apagado y sin bateria lo conectamos con el cable usb al ordenador. Conectamos la bateria al telefono y automaticamente el programa spflashtool debe detectar el movil y se pone a leer. Puede tardar unos 15 sg para detectar bien el movil, depende de lo que tarde windows en instalarlo asi que paciencia. Una vez detectado se pone a leer. Aquí mucha mas paciencia puespuede tardar cerca 1 hora.

Otra nota: en mi modelo de tlf F9300 para que lo detecte apagado el ordenador, conecto el cable usb y luego la bateria. Sin embargo he comprobado en otro modelo i93000, que con solo conectar el cable usb es suficiente. De todas maneras buscar tambien el foro concreto de vuestro terminal y alli tendreis ayuda especifica. Cada vez que usemos Spflashtool hay que actualizar el tlf de fecha y hora.

2d . Mtkdroidtool: copia de rom completa con scatter file (indico inicio y final de cada seccion) Una vez rooteado el tlf, conectamos el tlf en modo 1a . Arrancamos mtkdroidtools y simplemente la damos a la pestaña BACKUP. Nos hace una copia completa de nuestra rom en un subdirectorio llamado backups.

2e . Mtkdroidtool: full rom: le he llamado full rom por ponerle un nombre. Si tomamos de ejemplo el mapa de memoria del post anterior: Ejecuto SPflashTool y en “ReadBack” y hago una sola lectura de todo:Nombre fichero: ROM_0Inicio: 0x0000000000000000Final: 0x00000000623e8000 (yo copio solo hasta /data)

Ahora SPFlashTool me extrae un solo fichero con todos los datos. Conectamos el tlf en modo ADB y ejecutamos MTKdroidtools. Mtkdroidtools tiene una pestaña que se pone activa cuando nuestro tlf esta conectado y detectado (root necesario para copia total de system), y dice “ To process File ROM_from flashTool”. Pulsamos sobre ella, seleccionamos fichero ROM_0 y ahora nos crea copia de nuestro firmware automaticamente. Ubicación siempre en directorio “backup” de mtkdroid.

Creo que lo que hace es buscar el scatter file en el movil y luego crea las secciones del fichero. La verdad que esperaba hacerlo offline, elegir ROM_0 y después opción de elegir mi firmware_info o mi scatter file en offline. Pero bueno, haciéndolo Online descarta fallos de equivocación de estos ficheros.

2f. Adaptar copia a Spflastool : una vez copiadas los datos con Spflastool o con mtkdroidtool, si probamos a cargarlos con SpFlastool comprobaremos que nos da error en algun fichero. Para evitar esto hay que prepararlos para el programa. Podemos hacerlo de dos maneras:

Page 7: Mtk6577 manual de uso. version 6

1.Mtkdroidtools. Arrancais el programa y seleccionais “To prepare blocks for Flash Tool”, seleccionais el fichero md5 de vuestra copia y crea un nuevo subdirectorio “!Files_to_FlashTool” con los datos preparados.

2.Mtkromstudio. Arrancais el programa, seleccionais “create rom” y le decis el fichero firmware.info que busca de la copia de mtkdroidtool. Crea un directorio bak con los ficheros originales que ha modificado.

NOTAS: 1.para hacer la modificacion con mtkromstudio es recomendable hacer antes una copia del directorio original del firmware, pues los modifica de la ubicación original, aunque nos crea una copia en un subdirectorio llamado bak.. Esto no es inconveniente, pero no debeis trabajar sobre unos mismos ficheros con programas diferentes. Os dara error de checksum en alguno. 2. Veremos mas adelante otras formas de hacer las copias, y podeis tambien adaptarlas para flashtool con estos programas.

El adaptarlas no se porque es, pero es necesario y obligatorio para poder cargar bien algunas secciones.

2g . Script sh: con gscript lite : Os descargáis del playstore el programa gscrip lite. Este programa permite ejecutar script sh que le carguemos . Para hacer copia del firmware debéis mirar la versión de android que teneis, pues según la versión hay un script para ello. En mi caso tengo la versión 4.04 y he cargado el archivo para version 4: back_mt6577_a4_v2e_sdcard.sh. Tambien deciros que ha y otro archivo: back_mt6577_a4_v2e.sh. LA diferencia radica en que el 1º archivo hace copia en la sdcard y el 2º en la sdcard2. Asi que muy atentos a las ubicaciones, pues lo que interesa es si teneis espacio suficiente.

Bien, una vez instalado gscript lite se os habrá creado un directorio en la sdcard o sdcard2 llamado “gscript”. Os descargáis los script ( son ficheros con extensión sh) y los copiáis dentro de este directorio. Ahora ejecutáis el programa y por defecto os aparecen 3 scripts: “reboot phone”, “list sd-card” y “cpu information”. Le dais a “add script” y os aparecerán los scripts que anteriormente habéis copiado en el directorio, seleccionais el correcto y os aparece junto con los otros. En este momento si le dais una pulsación se ejecuta el script. Si ejecutáis la copia, el programa creara un directorio llamado “backup” en la raíz de sdcard o sdcard2, y dentro otro directorio que como nombre tendra la fecha de creación. Dentro teneis la copia del firmware. Si quereis opciones adicionales aparte de RUN el script, seleccionais el script y lo manteneis seleccionado hasta que se abra una pantalla que os indica mas opciones: edit, run, delete, save to sd, cancel. Si le damos a “save to sd”, nos copia el script seleccionado dentro del directorio gscript. http://www.4shared.com/rar/dNZ-QS4y/bakuptool_mt6577_40_v2e_4gb_sd.html

http://www.4shared.com/rar/AFlHNsb4/bakuptool_mt6577_40_v2e_4gb_sd.html

Podeis adaptar la copia como en el punto anterior, pero probar primero cargarla por si no da ningun error.

2h. Backup con aplicaciones : si solo queremos una copia y no queremos complicarnos la vida, con aplicaciones como titanium backup lo hemos resuelto todo.

2i. backup manual: comando dd : Para el uso del comando dd nos hace falta abrir una consola o shell (ventana de msdos para entendernos) en android. Descargarse Android terminal emulador (de Jack Palevich) de play store, o cualquier otro similar. Una vez lo ejecuteis os saldra el signo de dolar $ como prompt, indicando que sois usuarios. Ejecutar el comando “su” para ser superusuarios (root o en windows se llama administrador) y aparecera como prompt de sistema la almohadilla #.

De este comando solo vamos a utilizar 3 parametros para nuestro uso aunque tiene mas: bs, count y skip. Linux distingue SIEMPRE entre mayúsculas y minúsculas, a diferencia de Windows que SOLO distingue para las password. El comando dd copia ficheros, particiones, etc. Hay otro comando “cat” que nos lee el contenido de un fichero y lo muestra en pantalla, aunque podemos redireccionar la salida para que nos cree otro fichero o nos añada el contenido a uno ya existente.

dd if= “origen” of= “destino” bs=xx count=xx skip=xx

If= input file (fichero origen)of= output file (fichero de salida)

Page 8: Mtk6577 manual de uso. version 6

bs= block size (tamaño de bloque)count= nº de bloques a copiarskip= offset inicial (nº de bloques que se contaran y omitirán desde el inicio del fichero antes de empezar a copiar)

Una parte de el mapa de memoria del fichero dumchar_info F9300 es:

Part_Name….. Size…………………… StartAddr……………… Type MapTombr 0x0000000000004000 0x0000000000000000 2 /dev/block/mmcblk0ebr1 0x0000000000004000 0x0000000000004000 2 /dev/block/mmcblk0p1pmt 0x0000000000400000 0x0000000000008000 2 /dev/block/mmcblk0

Vamos a copiar mbr: dd if=/dev/block/mmcblk0 of=/sdcard/mbr bs=512 count=32 Para saber el valor de count haremos el siguiente calculo. El tamaño de mbr es 4000 en hexadecimal, lo pasamos a decimal y lo dividimos entre el bs. Y da 32. Este comando copia los primeros 512 bytes x32= 16384 bytes del fichero, que en hexadecimal equivale a 0x4000 (la notación 0x indica que es valor en hexadecimal) a la ruta /sdcard/ con nombre de fichero mbr.

Vamos a copiar ebr1.dd if=/dev/block/mmcblk0 of=/sdcard2/ebr1 bs=512 count=32 skip=32Este comando siempre empieza a leer desde el inicio del fichero. El parámetro skip es el primero que se lee y significa que 512 byte x 32 skip= 0x4000 que saltara desde el comienzo del fichero y copiara a partir de ese desplazamiento 512 bytes x 32 count= 0x4000 bytes. El destino, un fichero llamado ebr1 en la sdcard2 .

Vamos con pmt:dd if=/dev/block/mmcblk0 of=/sdcard/pmt bs=512 count=8192 skip=64Saltamos el tamaño de los otros dos ficheros y leemos el tamaño de pmt. Este esta ya claro

Tres puntualizaciones :A) Si omitimos parámetros ( solo ponemos “dd if=/dev/block/mmcblk0 of=/sdcard/mbr “), nos copia el fichero completo en la ruta especificada. Esto puede suponer un fichero de 10 Kb o 10 Gb.

B) Ebr1 es una partición. Por lo tanto podríamos poner “dd if=/dev/block/mmcblk0p1 of=/sdcard/ebr1” y solo nos copiaría la partición 1.

C) El tamaño de bs debe ser múltiplo o divisor de 512. Nos valdría 256, 128, 1024,etc. Si bs es mas pequeño, mas precisión de datos podemos copiar. Es obvio que si cambia bs, los otros parámetros también cambian. dd

if=/dev/block/mmcblk0 of=/sdcard2/ebr1 bs=1024 count=16 skip=16

Otra forma mas facil para algunos: en este caso solo cuenta 1 bloque y el tamaño de bloque es el tamaño total del archivo a leer.

Part_Name… Size StartAddr…………. Type ……..MapTouboot 0x0000000000060000 0x0000000000928000 2 /dev/block/mmcblk0bootimg 0x0000000000600000 0x0000000000988000 2 /dev/block/mmcblk0recovery 0x0000000000600000 0x0000000000f88000 2 /dev/block/mmcblk0logo 0x0000000000300000 0x0000000001be8000 2 /dev/block/mmcblk0

dd if=/dev/uboot of=/mnt/sdcard2/uboot.bin count=1 bs=393216

Page 9: Mtk6577 manual de uso. version 6

dd if=/dev/bootimg of=/mnt/sdcard2/boot.img count=1 bs=6291456dd if=/dev/recovery of=/mnt/sdcard2/recovery.img count=1 bs=6291456dd if=/dev/logo of=/mnt/sdcard2/logo.bin count=1 bs=3145728

Todos los ficheros para la copia del firmware los tenemos en el directorio /dev. Eso si: en el destino debemos tener espacio suficiente.

dd if=/dev/preloader of=/sdcard/copia/preloaderdd if=/dev/dsp_bl of=/sdcard/copia/DSP_BL

Para el caso de cargar los ficheros con SP flashtool, respetar también mayúsculas y minuscuals. Otra cosa, hay otro programa que se llama Flashtool (sin SP delante), este no vale para nuestros tlfs, ya que la SP SmartPhone.

NOTA: según el modelo de tlf podemos tener particiones mtd o emmc: esto figura en vuestro fichero firmware_info.

Abrir consola desde Windows: Podemos abrir una consola en el propio teléfono desde windows con dos programas: QTADB y MTKDROIDTOOLS. Conectamos el tlf com modo depuracion activa:

QTADB: iniciamos el programa y pulsamos sobre” herramientas>shell”

MTKDROIDTOOLS: iniciamos programa, pulsamos sobre “ADB TERMINAL” y se nos abre una ventana dos. Entramos en el directorio adb escribiendo “cd adb” y ENTER. Escribimos “adb devices” y si nos ha detectado el tlf nos aparece el numero de serie. Escribimos “adb shell” y ENTER. Ya lo tenemos. Cuando terminemos ecribimos 2 o 3 veces “exit” para salir de la shell linux y de la ventana dos.

No tenemos indicación alguna del estado de la ejecución (barra de estado o de progreso de la tarea), tener paciencia. Podeis probar si lo esta haciendo mirando con vuestro explorer a ver si el fichero esta y va aumentando de tamaño, vais refrescando.

2j. Backup manual con Script sh: ejecutar script personalizado : Con el programa Gscript lite vimos que podíamos ejecutar script. Pero no es necesario tener gscript para ello, hay un comando para ejecutar estos ficheros: el comando “ sh “. Pos vale. Creamos el archivo “ 123.sh “. Escribir las ordenes date, time, ls. Despues de cada orden pulsamos ENTER. Lo copiamos a la /sdcard. Y ahora ejecutamos “ sh /mnt/sdcard/123.sh” (indicar ruta completa) Se nos muestra en pantalla la salida de las tres ordenes anteriores

Los ficheros sh en linux son como los bat en windows: contenedores de comandos. Ahora abrir con notepad++ los ficheros que usa gscript lite para hacer las copias (back_mt6577_a4_v2e_sd.sh y back_mt6577_a4_v2e_sd2.sh) y centraros en el comando visto. Cuando veais en programación “ >null” significa que no da mensaje en pantalla, en nuestro caso no muestra mensaje “copia del fichero xxx”. Aunque si habeis visto algo de linux o simplemente conoceis el funcionamiento de los ficheros bat, podreis identificar algunos comandos en el script.

Ahora podeis crear un sh para hacer copia de vuestro firmware, e incluso lo podemos cargar con gscript lite. Aseguraos de que tengáis espacio suficiente en el destino.

Dd if=/dev/block/mmcblk0p3 of=/mnt/sdcard/system.imgDd if=/dev/block/mmcblk0p4 of=/mnt/sdcard/cache.imgDd if=/dev/block/mmcblk0p5 of=/mnt/sdcard/data.img.. y sigue, y sigue.

Anteriormente vimos que podemos adaptar los ficheros copiados con el comando dd para meterlos con flashtool. Los programas eran mtkromstudio y mtkdroidtool. En el caso de este ultimo busca un fichero .md5. Para generar un md5 de

Page 10: Mtk6577 manual de uso. version 6

la copia hecha bajarse el programa FlashSfv 2.6 ( es freeware) y generáis uno de todos los ficheros de la rom que habeis extraido. El programa tambien vale para comprobar el checksum.

Punto 3. METER UNA ROM 3a . Secciones a introducir: funcion de cada seccion : este punto es importantisimo, pues debemos saber que hace cada seccion. Las siguientes seis secciones son las unicas que deberiamos de modificar. Para el root solo le metemos boot y recovery. Logo.bin es para cambiar el logo de inicio. System, data y cache nos serviran para cambiar el sistema operativo y hacer reseteo del terminal.

Boot.img parametros de inicio en modo normalRecovery.img parametros de inicio en modo recoveryLogo.bin logo de inicio System.img el sistema operativo androidData.img userdata. Datos de usuario. Es donde se instalan las aplicaciones y se ubican todos los parametros de configuracion para el funcionamiento. Aunque esto esta cambiando, pues por ejemplo a partir de ICS podemos seleccionar donde queremos que se instalen las apliaciones.Cache.img datos temporales o de cache

El resto de secciones se ocupan de temas de imei, conectividad……no se que mas. Por lo tanto no debeis marcar estas SIN UN BACKUP DE VUESTRA ROM. No quiero decir que no os vaya a funcionar el tlf, sino que para cambiar de version de sistema operativo android no es necesario modificar estas. Un ejemplo: perdeis los imei y debeis de generarlos de nuevo con un programa y copiarlos a /data. Y cada vez que hagais un reset de fabrica (borra el contenido de /data y /cache) debeis volver a copiar los imeis para poder llamar y recibir llamadas.

http://www.androidforos.es/tutoriales/particiones-android-detalle-boot-data-system-recovery-cache-misc-sdcard-ext-t1064.html

http://www.androidsis.com/memoria-del-telefono-llena-donde-se-han-metido-todos-esos-mbgb-de-mi-dispositivo/

http://faqsandroid.com/estructura-del-sistema-de-ficheros-en-android/

3b. meter una rom con SPFlashtool : Esto es lo mas sencillo de todo. Quizapor eso habemos tantos que hemos metido un software incorrecto. Abrimos el programa spflashtool, cargamos nuestro scatter file y seleccionamos solo las secciones que queremos cargar a nuestro movil. Pulsamos sobre “download” y el programa queda a la espera. Ahora con el telefono apagado y sin bateria lo conectamos con el cable usb al ordenador. Conectamos la bateria al telefono y automaticamente el programa spflashtool debe detectar el movil y se pone a escribir. Puede tardar unos 15 sg para detectar bien el movil, depende de lo que tarde windows eninstalarlo asi que paciencia. La descarga dura mucho menos tiempo que la lectura. Veremos que hay una barra que cambia de color dos veces, si termina bien nos mostrara un circulo verde. Quitamos cable y la bateria unos 5 sg . La ponemos de nuevo y a probar.

Si la rom metida es de nuestro movil arrancara sin problemas. Si apreciamos que se oye y no se ve o viceversa o ninguna de las dos cosas es que el software metido no es de nuestro movil. Asi que toca bajarse nuevo software y probar de nuevo. Por este motivo digo de tener la bateria 100%, porque si nos equivocamos necesitaremos tirar de bateria para ir probando, ya que posiblemente no nos carga bateria tampoco.

http://bm-smartphone-reviews.blogspot.com.es/2012/05/mt6575-flashing-tutorial.html

3c. Meter secciones de una rom con comando dd

Aquí si que es sencillo. Tomemos como ejemplo el logo.bin del post anterior. El comando seria:

Page 11: Mtk6577 manual de uso. version 6

dd if=/mnt/sdcard/logo.bin of=/dev/logo (copiamos de la sdcard al /dev del tlf)

dd If=/mnt/sdcard2/recovery.img of=/dev/recovery (copiamos de la sdcard2 al /dev del tlf)

En /dev tenemos todas las secciones, mirar el nombre y ya esta. Ojo, son ficheros ocultos. Una vez copiados se reinicia.

En mi web inicial estos post son mas extendidos, de manera que explico para manejar el uso de la consola: ADB, comandos linux basicos, etc y sobre todo COMO COPIAR DE NUEVO CUALQUIER FICHERO POR CONSOLA DESDE EL PC, en caso de que nos muestre errores continuos el terminal. Eso si: si habeis borrado algo tener buena memoria de lo borrado a ser posible y asi poder recuperarlo rapido.

4. Enlaces para descarga de firmware ,software y enlaces de interes Os hara falta el uso de google traductor en algunas paginas. Os explicare el uso: debeis abrir dos pestañas, en una entrais en la direccion original y en la otra abrir google. Poneis en la barra de busqueda de google la direccion web de la otra pestaña (la que queremos traducir) y le damos a buscar. Una vez encontrada (obvio) pulsamos sobre “mas>traductor”. Ya tenemos la original y la traduccion, ahora viene la soltura de cada uno: debeis guiaros por las dos paginas para navegar. Tener en cuenta que habra enlaces y pestañas que en el traductor no funcionan, en este caso os toca abrir otra pestaña y trabajar igual o copiar el texto y traducir el texto.

http://www.86pp.com/http://www.hiphonebrazil.com/viewtopic.php?f=20&t=1571http://forum.china-iphone.ru/http://www.flashmyandroid.com/forum/forum.phphttp://chinamobiles.orghttp://www.talkingmobi.com/http://www.needrom.com/http://mimovilchino.blogspot.com.eshttp://www.movilesdualsim.comhttp://www.universosmartphone.orghttp://4pda.ruhttp://forum.etbuying.com/http://forum.xda-developers.comhttp://www.androidiani.com/forum/ http://www.androidgroupon.com/rom/http://www.roomyshare.com/http://androidforum.cz http://www.romzj.com http://forum.etbuying.com/http://www.g12csr.com/http://mimovilchino.blogspot.com.es/http://74.86.85.61/forum.php (PandaWill)http://mtk2000.ucoz.ru/http://mtk-mobile.blogspot.com.es/

5. Otros puntos de interes : EN LINUX ES IMPORTANTISIMO LOS PERMISOS DE LAS CARPETAS Y FICHEROS: NO SOLO ES SUFICIENTE CON COPIAR LOS FICHEROS, HAY QUE DARLES LOS PERMISOS. Estar bien atentos a esta nota, pues muchos “no funciona” son derivados de los permisos. He mencionado el uso de Root Explorer (interfaz vasta pero super potente). Hay otros muy buenos, como solid explorer. Pero el que me gusta y es freeware: fx explorer, con su plugin root y websharing. Este explorador, de entre sus funciones, las que mas me gustan son dos: es multiventana (podemos

Page 12: Mtk6577 manual de uso. version 6

abrir las ue queramos) y cuando copiamos ficheros, el programa automaticamente nos cambia los permisos de los copiados y los pone iguales que los permisos que tienen los ficheros de la carpeta destino. Esto es un lujo, aunque si te acostumbras a ello, te ocurrira que si usas otro explorer se te pase a veces lo de los permisos.

Antes de empezar debeis hacer copia de todo lo que pensais modificar o eliminar. Lo normal es hacer copia de vuestras aplicaciones, que normalmente es lo que se empieza a tocar.

5a. Añadir/eliminar app de sistema MANUALMENTE En android tenemos tres carpetas donde almacenan las aplicaciones: /system/app, /system/vendor/app y /system/vendor/operator/app. Esto siginifica que cualquier aplicación que se copie en uno de estos directorios, cuando inicie android la instala automaticamente. De igual manera si la eliminamos de aquí se desistala.

¿Y para que quiero copiarlas aquí? Pues hay 2 motivos:

1. Si hacemos un factory reset la aplicacion no se elimina, se eliminan los datos descargados, actualizaciones y configuracion, pero en el inicio de android se vuelve a instalar de nuevo. En un factory reset se borra /data, /cache y android.secure (permisos).

2. Cuando instalamos una aplicación, si se descarga por play store, el instalador se copia en /data/app y luego se instala en /data. Ocupa espacio de mas en data. Si el instalador de la aplicación esta en un directorio de sistema ya no ocupa espacio en /data, solo su instalacion. Esto ya no es problema en los nuevos moviles con android 4, pues las tarjetas de memoria ya tienen un tamaño considerable y hay una opcion en configuracion de decirle a android donde queremos que nos instale la aplicación: en el tlf o sdcard. Pero en tlf con android 2.x la cosa es diferente: a peor.

Tener en cuenta que con cada actualizacion de programa se descarga un instalador nuevo. ¿de donde saco los instaladores que me gustan? O descargas de internet, o si esta instalado en tu tlf, lo tienes en /data/app o en /mnt/sec.

Google talk………… http://www.4shared.com/android/ypzlzOJq/Google_Talk.html

¿De donde saco las aplicaciones?

1.) De internet: un buen buscador es Http://www.filecrop.com 2.) De mi movil si ya las tengo instaladas: buscar en /data/app y en /mnt/asec

5b. eliminar app de sistema con mtkdroidtools : Podemos eliminarla a mano con un explorador de archivos o automatico con mtkdroidtools. Si os habeis dado cuenta en el programa mtkdroidtools hay un botón que dice “Delete china”. Si lo pulsamos nos sale en el visor del programa que borra unas app de los directorios indicados en el fichero “files_for_delete.txt”. Esta ubicado en el directorio de mtkdroidtools. Lo edito con el bloc de notas y veo el contenido. Si os dais cuenta borrais /system/media/bootaudio.mp3 y /system/media/shutaudio.mp3, los audios de inicio y apagado. Eliminarlos de la lista.

La mayoria de los problemas que tendreis los salseros es que borreis algo que necesita el sistema: normalmente aplicaciones. A partir de aquí comenzareis a ver errores y errores. La solucion es bien facil: reponer lo borrado, no es necesario meter el sistema entero de nuevo. Para ello si el sistema operativo android arranca en modo grafico podemos copiarlo directamente a su ubicación original y si no hay que hacerlo en modo comando (modo texto) con ADB.

5c. Sustituir aplicaciones de sistema : A muchos nos gusta eliminar las apliaciones que no nos gustan o simplemente queremos sustituirlas por otra de igual funcion pero con mas caracteristicas. Pues la idea es bien sencilla: hay que diferenciar entre aplicaciones delicadas y por las prescindibles.

Unas delicadas: explorador de archivos, launcher (escritorio), teclado……esto significa que es obligatorio primero instalar una aplicación similar antes de borrar la que tenemos instalada. Esto es obvio: si borramaso primero ya no tenemos esa funcion en android. Tocaria recuperarla de nuevo, en modo normalmente (os lo digo por experiencia). Descargarse nova launcher, instalarlo y despues borrais vuestro launcher por defecto.

Page 13: Mtk6577 manual de uso. version 6

Referente a las otras prescindibles: galeria, reloj……podemos eliminarlas primero, pero no supone ningun problema pues podemos copiar despues otra similar.

Mi recomendación: hay aplicaciones mucho mejores que las que vienen de fabrica: reproductor mx player, alarmas….pero la pega de ellas es que estan continuamente actualizandose, y si son freeware: publicidad. No se que pasa en android que la frecuencia de actualizaciones es….un coñazo. Asi que si os apañais con las originales, quedarse con ellas.

NOTA IMPORTANTE: una gran confusion corre por todos sitios que tratan MTK65xx. Algunos habeis borrado app de sistema y os funciona mal el telefono. Andais buscando urgentemente vuestra ROM. Si os habeis leido bien hasta aquí con claridad: no es necesario tene vuestra rom, solo buscar una version de rom igual a la vuestra y reponer las aplicaciones. La diferencia entre unas roms y otras es que los drivers incorporados son diferentes, pero LAS APK DE SISTEMA SON LAS MISMAS (PROBADO). De hecho, ¿Cómo puede ser que que le metais una rom de oto movil y solo funcione el audio, se vea blanco, etc? Por esa razon. A probar se ha dicho. PERO SI ES IGUAL QUE WINDOWS, CUANDO NOS FALLA UN FICHERO DE SISTEMA COGEMOS CUALQUIER COPIA DE LA ROM (SISTEMA OPERATIVO) Y LO RECUPERAMOS.

5d. leer el contenido de system.img : Este punto es exclusivo de las copias Samsung. Imaginaos que borrais algo y debemos volver a meterlo para que el telefono deje de dar errores, o simplemente queremos ver el contenido de una imagen img de linux. Si no habeis hecho copia de lo borrado os toca bajarse una rom de vuestro modelo de terminal y extraerlo para meterlo. Si habeis hecho copia con spflastool, mtkdroidtool, gscript… lo que necesitamos es volver a descomprimirlo para meterlo al tlf. Lo mas normal es que hallamos borrado/modificado algo de system.

Lo primero es un software para montar imágenes con formato linux (ext3, ext4 basicamente). Yo utilizo Linux_Reader y es freeware, pero he subido dos mas (aunque tengamos extension img nos dara error al abrirlo con winrar o similar). Asi que lo primero es montar la imagen con linux reader, si tenemos acceso podemos extraer el contenido.

En caso de montar pero no tenemos acceso, significa que aun esta la imagen “codificada” con el formato de samsung. Para ello ejecutamos sgs2toext4.jar (debeis tener instalado java) y se abre una ventana en primer plano (a la espera). Ahora arrastramos nuestro fichero system.img a la ventana. En este momento, se creara un fichero con el mismo nombre mas el añadido de ext4 en el mismo directorio del fichero arrastrado. Ya lo tenemos decodificado. Ahora retrocedemos al paso anterior para montar con Linux_Reader y ya podemos extraer el contenido.

Una pqueña nota: cuando arrastramos hacia sg2toext4.jar y empieza el descifrado, si vemos que nos sale el numero cero es que no es necesario este paso. Podemos ir a linux_reder directos.

Recordar desmontar la imagen antes de cerrar el programa. Si quereis ahorraros los pasos copiar antes los directorios que vayais a modificar o si os cuesta menos los ficheros que pensais modificar o eliminar. http://www.4shared.com/rar/CDCnxOjr/leer_contenido_system-ext4img_.html

5e. Cambiar el logo de inicio y logo_bin con logobuilder 1.3

Aquí sonidos para el movil: http://www.4shared.com/zip/L51-6rCP/Audio.html

Aquí animaciones para resolucion 480x840: http://www.4shared.com/rar/m3x5sI8Y/bootanimation_f9300.html

Aqui logobuilder 1.3: http://www.4shared.com/zip/sEasq87r/LogoBuilder_v13.html

Arrancamos el teléfono: se muestra logo.bin, tras esto boot_logo (/System/media/images/boot_logo) y por ultimo la animación de inicio junto con su audio de inicio (/System/media/bootanimation.zip y / System/media/bootaudio.mp3). Al apagar el teléfono se muestra la animación de apagado junto con su audio de apagado

Page 14: Mtk6577 manual de uso. version 6

((/System/media/shutanimation.zip y / System/media/shutaudio.mp3). Si os pasa que se os muestra dos imagenes diferentes en el inicio antes de la animacion, la primera logo.bin y la segunda boot_logo (yo siempre borro la segunda).

Para cambiar el sonido solo teneis que sobreescribir los archivos de audio, lee perfectamente los mp3. Sin embargo debeis tener cuidado de no pasaros en su duracion: yo aconsejo no mas de 7sg (es probarlo).

Para cambiar la animacion de inicio/apagado y boot_logo usamos logobuilder 1.3. Las condiciones son dos: la resolucion de pantalla debe ser ajustada a la de nuestro tlf y duracion de la imagen no muy larga. No sabria deciros cuanta, pero como podemos hacerla ciclica no hay pegas.

Descargamos el software y nos agenciamos un logo.bin de nuestro móvil. Descomprimo en un directorio y creo un subdirectorio dentro llamado ejemplo (por poner un nombre cualquiera) y copio ahí nuestro logo.bin. Ejecuto el programa, nuevo proyecto y eligo mi logo.bin. Yo eligo el mismo subdirectorio “ejemplo” para el proyecto.

Y ahora nos pide el tamaño, el mensaje es bien claro: “BUFFER=ANCHO*ALTO*2”. En mi caso el buffer es 819840, divido entre 2= 409920. Es decir el multiplicar el ancho * alto de nuestra imagen debe dar ese resultado: 480*854. Para conocerla buscar en internet las características de vuestro móvil o irse a los bootanimations y abrir el archivo “desc.txt”. Lo ponemos y comienza a desempaquetar las imágenes al directorio “ejemplo”. No cierro logobuilder.

Por probar, abro con paint la primera imagen, “seleccionar todo”, “invertir selección” (o invertir colores). Inicialmente fondo negro y letras blancas, ahora fondo blanco y letras negras. Guardo y cierro paint. Vuelvo a logobuilder y le doy a crear. Ahora me ha creado un fichero “update.zip” para el recovery. Podeis meterlo por recovery o descomprimis el update.zip, extraeis logo.bin y lo meteis con SPFlashtool. Para merterlo con el comando dd: buscar en el comprimido el fichero updater-script, lo editais y vereis la ruta donde lo copia (/dev/logo).

Este ha sido un rápido ejemplo. Podeis extraer las imágenes de los bootanimation (mirar vuestra resolución de fotos) o crearlas/modificarlas con cualquier programa. Si os habéis fijado tienes la opción de crear el boot_logo. Yo no lo utilizo, lo he borrado.

El siguiente paso es modificar los tres tipos de animación:1. En la de pacman es animación cíclica completa (de toda la animacion).2. En la GalaxySBIOS4-Edify es cíclicasolo una parte de la animación.3. En amsun original se ve la animación y cuando termina muestra una imagen fija.

Si descomprimis los zip veréis que algunos tienen una sola carpeta, otros varias y todos un archivo de texto: desc.txt. Este archivo es la configuración que coge el teléfono para mostrar la animación.

Archivo desc.txt de pacman:

480 854 5 resolucion de pantalla y frames por segundo: 480 854 5

p 0 0 part0 busca en carpeta part0 y repite ciclico (repite todo) sin pausa

Archivo desc.txt de GalaxyBIOS4-Edify:

480 854 5 resolucion de pantalla y frames por segundo: 480 854 5

p 1 0 part0 busca en carpeta part0 y repite 1 vez solo sin pausa

p 0 0 part1 busca en carpeta part1 y es ciclico (repite solo las imágenes de part1)

Archivo desc.txt de samsung original:

480 854 5 resolucion de pantalla y frames por segundo: 480 854 5

Page 15: Mtk6577 manual de uso. version 6

p 1 0 part0 busca en carpeta part0 y repite 1 vez solo sin pausa

p 2 8 part1 busca en carpeta part1 y repite 2 veces con pausa de 8 frames.

p 0 0 end busca en carpeta end y repite es ciclico (pero solo tiene una foto: es imagen fija)

LA VELOCIDAD LA MODIFICAMOS CAMBIANDO EL NUMERO DE FRAMES (en este caso son 5). UNA VEZ MODIFICADOS EMPAQUETAMOS EN ZIP SIN COMPRESION.

Nota: existe otro archivo “/system/media/shutrotate.zip”, que en teoria es la animación cuando apagas el teléfono en rotación: no se exactamente como funciona ni como activarlo, pero yo no lo tengo en mi tlf (ni me apetece).

6- CYGWIN Y ANDROID KITCHEN : Cygwin es un emulador de Linux: nos permite ejecutar comandos de Linux en windows, para los que queramos empezar un poco con este sistema operativo. Es decir nos crea un mini entorno linux, el cual nos servira para poder trabajar con los ficheros de android. Cygwin consta de dos partes: 1) una DLL que actua como una capa de emulacion del API de Linux (cygncursesw-10.dll: debe estar en las dll de windows, la version de la librería cambiara al igual que vaya cambiando la version de cygwin) y 2) un conjunto de tools y herramientas que proporcionan un look & feel como el de Linux. Cygwin tiene multitud de paquetes a instalar, la mayor pega que tendremos sera saber seleccionar cuales queremos/necesitamos, ya que cuando ejecutamos la instalacion veremos la multitud de paquetes que tiene (y tambien muchos paquetes para la misma funcion).

Y android kitchen es una serie de utilidades para trabajar con las imágenes de los telefonos chinos MTK (deodexar, desempaquetar….).

Si lo que queremos es modificar nuestras aplicaciones o la apariencia de nuestra rom tenemos dos opciones:1) instalar aplicaciones que lo hagan o 2) deodexar la rom, y ya poderemos ver y modificar el contenido de las odex.

Se explica como instalar cygwin y android kitchen, y explicaremos una parte se sus funciones: pero tienen muchas mas.

6a . Instalacion : descargar el ejecutable de instalación de http://www.cygwin.com/ y lo ejecutáis. Si ya teneis instalado un cygwin debéis desistalarlo completamente. Una vez desistalado borráis la carpeta donde estaba instalado. Ahora ejecutáis de nuevo la instalación y seleccionais “ descargar sin instalación”. Dejais la opción por Default y añadis los paquetes necesarios para que funcione android kitchen:

* Devel / gcc* Interpreters / perl* Utils / cpio* Utils / util-linux* Utils / ncurses* Archive / zip* Archive / unzip* Web / wget

(en caso de que haya mas de un paquete con ese nombre los añadis también) y comenzáis. La carpeta de instalación y de descarga la debe crear el programa de nuevo, y asi os asegurais que es instalación limpia. Una vez descargado ejecutais de nuevo e instalais offline. Una vez instaladoos descargáis la ultima versión de android kitchen de http://forum.xda-developers.com/showthread.php?t=633246 y la ultima versión de unpack/repack de Bruno martins de https://github.com/bgcngm/mtk-tools . Descomprimis Android kitchen y lo copiáis en un directorio nuevo llamado ak dentro de cygwin. Descomprimis mtktools de Bruno Martins y lo copiáis en un directorio nuevo llamado “bm” dentro de cygwin. De esta manera ya podemos empaquetar/desempaquetar boot.img y recovery.img desde cygwin.

Page 16: Mtk6577 manual de uso. version 6

Ahora creais una carpeta nueva llamada “mt65xx” dentro del directorio ak\tools, copiáis todos los ficheros de bm y los pegais en mt65xx. Ahora android kitchen ya podra identificar, empaquetar y desempaquetar imágenes img de cpu mt65xx. Para añadir plugins a android kitchen, directamente copiais los ficheros al directorio ak\scripts\plugins.

Si tenemos creado un recovery online (es decir, directamente lo ha empaquetado CWM en su servidor) necesitamos otro fichero que lo desempaqueta, llamado” unpack-bootimg.pl”. Yo lo copio en una carpeta nueva llamada cygwin\bt.

Aquí cygwin con fecha del dia de actualizacion, por lo que podeis ahorraros los pasos anteriores: http://www.4shared.com/rar/BY8a1Rml/cygwin_actua_17_02_2013.html Las carpetas de ficheros mencionadas antes ya estan incluidas, solo debeis copiarlas al directorio de instalacion de cygwin.

6b. Crear recovery ClockWorkMod con CYGWIN: Me fastidia postear algo sin estar totalmente acabado, pero aquí hay que saber mucho del tema. De todas maneras este es el proceso de desempaquetar/empaquetar boot y recovery. Sin embargo en la segunda parte os pondre un truco para ir teniendo el ultimo recovery.

Los tlfs tiene dos modos de arranque: boot (inicio normal) y recovery (modo recuperacion: algo asi como modo a prueba de fallos de windows, inicio alternativo). Para acceder al modo recovery pulsamos a la vez los botones de volumen + y power. Una vez enciende seleccionamos recovery y aceptamos (el modo fastboot es para calibrar los sensores y hacer test al telefono. En los tlf originales de Samsung tienen otra funcion).

Con el recovery que viene original podemos hacer poca cosa: copiar carpeta /data…..y ya esta. Para acciones adicionales avanzadas hay que meter otro recovery: yo utilizo el ClockWordMod. Con este, entre otras cosas, podemos hacer copia de seguridad de las particiones /system, /data, /cache y android secure (le llama nandroid). Y por supuesto podemos recuperarla. El recovery es en realidad arrancar en modo texto.

PRIMERA PARTE: CREANDOLO OFFLINE.Y ahora trato un tema que interesa mucho: crear nuestro propio recovery. La guía seguida para ello es el enlace http://chinagizmos.blogspot.in/2012/...ones.html.html aunque hay una pequeña modificación de procedimiento que explicare en este post. los programas necesarios figuran en el enlace, aunque ya lo explique en el punto 6. Leer todo el post antes de hacer el vuestro.

1. Copiamos el recovery.img extraido de nuestro tlf (con mtkdroidtools o gscript) al directorio “c:\cygwin\bm”.2. Ejecutamos el acceso directo del escritorio de cygwin ( si no lo teneis ejecutáis c:\cygwin\ Cygwin.bat).3. Escribimos “ cd c:/cygwin/bm “ y enter ( ahora estamos en directorio bm. Observar en windows es \ y linux es / ).4. Desempaquetamos el contenido del recovery. Para ello escribimos “./unpack-mt65xx.pl recovery.img “. Si todo ha ido bien, en el directorio c:\cygwin\bm se nos ha descompimido el contenido del recovery: se nos ha creado un directorio llamado “recovery.img-ramdisk” y un fichero con nuestro kernel llamado “recovery.img-kernel.img”. El otor fichero “recovery.img-ramdisk.cpio.gz” puede borrarse.

Una nota: Si queremos ahorrar escribir a mano, podemos seleccionar los comandos con el raton, les damos a copiar y en la ventana de msdos, pinchamos en la esquina superio izq, y vamos al menú EDITAR>PEGAR. Y una vez ejecutado los comandos en la ventana dos, no hace falta escribirlos de nuevo, simplemente con pulsar flecha arriba o flecha abajo podemos buscar todos los comandos ejecutados en esa ventana (antiguo comando DOSKEY de ms-dos).

5. Ahora copiamos el fichero “ c:\cygwin\bm\recovery.img-ramdisk\etc\recovery.fstab “ a “c:\cygwin”. Si leeis hasta el final la guía, os daréis cuenta que este fichero es la tabla de particiones de nuestro móvil. Borramos el directorio “c:\cygwin\bm\ recovery.img-ramdisk “ y “c:\cygwin\bm\recovery.img”.

Page 17: Mtk6577 manual de uso. version 6

6. Descargamos los recoverys de http://forum.xda-developers.com/showthread.php?t=1825722 .La ultima probada es la version 6030 y 6028 para combinar con el kernel original de nuestro recovery extraido con mtkdroidtools o gscript. Vereis que tendreis en muchos casos un ejecutable para hacerlo sin necesidad de programas externos. Yo seguire el proceso que me gusta, pues una vez comprendido vereis que es supersencillo. Buscamos el recovery comprimido, que normalmente viene en 7z, y se extrae. La carpeta para el recovery debe llamarse “recovery.img-ramdisk”, si no es asi renombrarla, (observar lo descomprimido con el recovery original del punto 4).

Se descomprime el fichero .7z y se copia el directorio “recovery.img-ramdisk” a “c:\cygwin\bm“ (BORRAMOS ANTES EL ANTERIOR), y copiamos “c:\cygwin\ recovery.fstab” al directorio “ c:\cygwin\bm\ recovery.img-ramdisk \etc”. De esta manera cuando arranquemos en modo recovery ya nos reconoce nuestras particiones.

7. Ahora empaquetamos todo en un nuevo recovery.img ejecutando “./repack-mt65xx.pl -recovery ./recovery.img-kernel.img ./recovery.img-ramdisk ./recovery.img “. 8. Ya se nos ha creado el fichero recovery.img con el nuevo CWM. Nos creamos una nueva carpeta donde queráis, copiamos el recovery.img y nuestro scatter file y lo metemos con sp flashtool, o lo meteis con el comando dd. Arrancamos el tlf (y lo ponemos en fecha y hora si lo habeis metido con SPFlashtool). Apagamos y arrancamos en recovery y probamos.

Según dice la guía, el botón de confirmar ( entrar en el menú) del CWM 5 es el botón de power, mientras que en CWM 6 es el botón de cámara. Que todo el procedimiento halla salido exitoso no garantiza que vaya a funcionar, pues la creacion del recovery en MTK se basa en otros modelos de tlfs (ver el fichero build.prop). Hay que probar para verificar que funciona. SUERTE.

SEGUNDA PARTE: OFFLINE, EXTRAER RECOVERY DE OTRO TERMINAL SIMILAR PARA NUESTRO TLF

Se me ocurre otra idea. El F9300 tiene un hermano: el GT-N9300+. Aunque no tiene el botón de volumen en el lado izq, si tiene las mismas entradas de botones que el nuestro. Encuentro el CWM 6015 para el hermanito. ( buscar Feiteng GT-N9300+ CWM 6.0.15 en google) tenemos su descarga en http://www.4shared.com/zip/w9-OdnDH/..._CWM_6015.html Lo descargo y verifico su tabla de particiones: es la misma que la mia ( y si no es la misma es igual, me interesan los demas archivos no las particiones. Como es idem, mejor que mejor) Solo me falta probarlo. Reempaqueto con mi kernel y…… TODO OK. ESTO PIRULA BIEN.EL TRUCO: el telefono a buscar debe tener las misma entradas (el mismo numero de botones: power, volumen up, volumen down, retroceso, menu y home) que nuestro terminal. Lo unico es probarlo: empaquetar con nuestro kernel.

El CWM 6 ha cambiado su forma de hacer los backups. Crea un directorio con la fecha ( poco espacio) y otro llamado “ blobs” (el grueso de la copia). Tras buscar info por ahí, he leído que hace copias incrementales. Prefiero la version 5.5 que es la que tengo en mi tlf, ya que me hace copia de todo completa, aunque he probado la 6028 y 6030 y lo hacen igual que la 5.5 ( ¿¿?? ).

Referente al cwm 6028 lo encontre del móvil NEWMAN N1. Si editáis los ficheros de la carpeta “recovery.img-ramdisk “ podeis comprobar por el archivo “default.prop “ que el software pertenece a otro modelo de móvil ( es una copia). Por la elección de este y los otros archivos, alguna veces funciona algo y otras no cuando hacemos un recovery online. Si quereis probar copiar el recovery de otro movil, buscad que sea parecido al vuestro, en mi caso mtk6577 dual Core.

De todas maneras no calentarse con las ultimas versiondes de recovery: si nos funciona alguna version bien (la 5.5 y 6030 van perfectas) ya lo hemos solucionado. Mientras tengamos backup no hay que preocuparse demasiado.

RECOVERY LEWA TWRP : Actualizada a la version 2.5 en http://forum.xda-developers.com/showthread.php?t=1825722

Page 18: Mtk6577 manual de uso. version 6

Os descargais los ficheros. En este caso tenemos dos comprimidos: uno es nuestro recovery y el otro es la carpeta de la resolucion de nuestra pantalla. En mi F9300 es 480x854: asi que copio el directorio”res” de la carpeta 480x854 junto con los otros extraidos. Este recovery me arranca bien pero no me gusta, no me funciona correctamente.

RECOVERY 4EXT TOUCH : http://forum.xda-developers.com/showthread.php?t=1408936 Aun no he probado si puedo instalarlo en mtk6577.

TERCERA PARTE: ONLINE

La pagina web del creador de CWM es https://plus.google.com/103583939320326217147/posts y en la pestaña “sobre mi” aparece un enlace para crear un CWM online: http://builder.clockworkmod.com/ . Entramos en este ultimo enlace. En esta pagina siempre compila la ultima version CWM, no hay opcion de elegir.

En la primera opción añadimos nuestro recovery. En la siguiente,opción de añadir nuestro fichero “recovery.fstab”. Yo lo he añadido. Ahora le damos a BUILT. Cuando la petición es aceptada nos aparece otra pagina con el numero de petición (este numero es por si queremos descargar el recovery en otro momento). Pulsamos sobre “ Continue to the built server” y vemos el proceso de compilación de nuestro recovery. Cuando halla terminado pulsaremos sobre “recovery.img” y ya tendremos el supuesto CWM para nuestro terminal.

Quiero ver si me ha respetado la tabla que le he subido, para poder descomprimir el recovery hecho online hay que descargar el fichero de http://forum.xda-developers.com/showthread.php?t=915808 . Creamos la carpeta “c:\cygwin\bt “ y copiamos el archivo descomprimido “unpack-bootimg.pl “. Copiamos a esta carpeta el recovery.img creado online y lo descomprimo ejecutando “./unpack-bootimg.pl recovery.img”. compruebo que no es mi tabla de particiones, la sobreescribo por la mia. Sigo con las instrucciones de sobreescribir carpetas y lo pruebo: no funciona.Decido copiar todo el directorio " recovery.img-ramdisk" extraido, eso si con mi tabla, reempaqueto con mi kernel original. Lo meto y me arranca bien el CWM 6028 y 6030, me respeta todos los botones, se ve muy bonito pero….no funciona al ejecutar el comando. Algo mas hay de configuración o sobreescribir ficheros entre los recoverys buenos. No se lo que es.

De hecho podeis seleccionar en la web “Touch Screen”: arranca con espacios mas grandes, puedo usar el desplazamiento del tactil pero no me funciona la copia. Siempre que creemos uno Online hay que cambiar “recovery.fstab” por el nuestro. Esto es debido a que en modo online lee el fichero Built.prop y copia la tabla del modelo que aparece ahí. Podra arrancar…….pero no tiene porque funcionar.

Si habeis leido todo sobre el recovery, habreis deducido que si el movil no es original solo tenemos dos opciones: 1.) saber mucho del tema y modificarlo tu mismo. 2.) descargar nuevos recoverys.img-ramdisk o nuevos recoverys de tlfs y probarlos. SUERTE.

NOTA: boot.img esta igual de empaquetao que recovery.img, de tal manera que podemos ver su contenido:

“./repack-mt65xx.pl -boot ./boot.img-kernel.img ./boot.img-ramdisk ./boot.img” y “./unpack-mt65xx.pl boot.img”.

6c . Manual CWM : Este manual es de la version cwm 5.5. En versiones superiores habran salido opciones nuevas. Pulsamos a la vez power + volumen +. Seleccionamos recovery y ENTER. Una vez dentro del recovery nos sale:

-reboot system now ----------reiniciar sistema

Page 19: Mtk6577 manual de uso. version 6

-install zip from sdcard -------instalar fichero zip de la sdcard. Con un fichero zip podemos instalar cualquier cosa: actualizar o instalar un programa, seccion de android o copiar ficheros (es lo mismo todo).

-install zip from sdcard\choose zip from sdcard -------- nos permite elegir un fichero zip ubicado en la sdcard con cualquier nombre a instalar

-install zip from sdcard\apply /sdcard/update.zip------- nos permite elegir un fichero zip ubicado en la sdcard con con nombre update.zip para instalar una actualizacion

-install zip from sdcard\ toogle signature verification ------ Activa o desactiva la verificación de firmas.Cuando la verificación de firmas está activa no podras instalar cualquier zip que no haya sido firmados .Desactivarla evita la comprobación de verificación de firmas y prosigue con la instalación

-install zip from sdcard\toggle script asserts ------- permite activar y desactivar scripts. (aun no lo he usado)

-install zip from sdcard\choose zip from internal sdcard ------ instalar fichero zip de la internal sdcard (memoria del tlf).

-Wipe data/Factory reset------- elimina todos los datos que se tengan en el terminal, nos referimos a los del usuario: borra /data, /cache y android.secure. Por lo tanto, deja el teléfono o tablet como al sacarlo de la caja. También se borran las particiones SD-ext.

- backup and restore ---- permite realizar copias de seguridad y restauralas.

- backup and restore\backup------- realiza un backup en la sdcard. Copia boot, recovery, android.secure, data, cache y system. En CWM 5 hace copia completa en cada backup y a partir de la CWM 6 es incremental. Lo copia en el directorio /mnt/sdcard/clockwormod/backup

- backup and restore\restore---- restaura un copia de seguridad de la sdcard.

-backup and restore\advanced restore---- permite restaurar una seccion concreta de un backup de la sdcard.

- backup and restore\restore from internal sdcard---- restaura un backup de la memoria del tlf.

-backup and restore\advanced restore from internal sdcard---- permite restaurar una seccion concreta de un backup de la memoria interna del telefono.

- mounts and storage ---- permite realizar y gestionar tareas de mantenimiento de las particiones del terminal: en concreto son montar, desmontar y formatear particiones.

- advanced ---- contiene las opciones adicionales del ClockworkModque son variadas y también poco utilizadas. Wipe Dalvik cache, borra la caché; Wipe Battery Stats, borra el fichero battery-stats para recalibrar la bateria.(para realizar esto recomiendo bajarse un programa adicional que os lo haga), Report Error, guardar un registro de las recientes operaciones de la recovery ClockworkMod en sdcard. Key test, hace una comprobación de las teclas hardware del dispositivo. Partition SD card, permite crear particiones en la tarjeta SD para uso de sistema. Esta es la particion /sd-ext; , Fix permissions: Corrige los permisos de archivo para las particiones de memoria interna por defecto.Esto opcion es muy útil como una solución para varios errores de Fuerza de Cierre de programas, que comienzan a aparecer después de que una aplicación es instalada. Lo que hace en realidad es poner los permisos necesarios para que la aplicación instalada pueda acceder a sus propios datos del directorio donde se instalo. http://www.movilesdualsim.com/foro/threads/22396-Backup-firmware-SMARPHONE-F9300-mtk6577/page16

Pues aqui llega la explicacion de porque se hacen wipes (borrado). Al igual que windows o cualquier otro SO, el borrado es para que las apliciones se instalen sin restos de una version anterior, y especialmente PID correcto. Es decir, la

Page 20: Mtk6577 manual de uso. version 6

aplicacion nueva a instalar crea su directorio de trabajo con su PID, de esta manera puede acceder a todos los datos, pues ella es la propietaria. Simplemente esto.

NOTA IMPORTATE: una vez instalado el CWM, si queremos hacer un factory reset debemos hacerlo desde el propio recovery. Si lo hacemos desde el tlf posiblemente no funcionara porque entra en un bucle con el recovery cwm.

Este recovery esta muy bien, solo le hecho en falta una opcion a añadir: poder abrir una shell. Lo unico encontrado es Aroma Filemanager, un explorador que se abre en recovery. Para ello arrancar en recovery, os descargais el programa y le dais a install zip. http://forum.xda-developers.com/showthread.php?t=1646108

6d. Deodexar la rom con Android Kitchen :

ODEXEn Android, todas las aplicaciones vienen empaquetadas en archivos con extension APK. Junto con las aplicaciones de sistema o que vienen "de serie" en el firmware del fabricante (system/app/), se puede encontrar un archivo de extension ODEX con el mismo nombre que el APK cuya funcion es la de ahorrar espacio. Estos archivos .odex son colecciones de partes de la aplicacion correspondiente, que estan optimizadas ANTES de arrancar. Lo que se consigue con esto es que se arranque el sistema mas rapido ya que con este sistema se hace una precarga de parte del codigo de la aplicacion.

Es por esto que las aplicaciones de sistema o preinstaladas sean dificiles de modificar, ya que parte del codigo de la aplicacion ya está escrito en dicho archivo .odex, Llamo modificacion a editar codigo para añadir o quitar funcionalidades a la aplicacion o, simplemente, cambiar el aspecto de las aplicaciones editando la parte visual (frameworks y demas... iconos, logos, fondos, etc etc)

DEODEXEl proceso de deodexizado consiste, simplemente, en reempaquetar todos los contenidos y componentes de la aplicacion en el APK correspondiente mediante el recompilado del classes.dex, que es el fichero contenido en el APK que contiene las clases de Java que se han usado en el codigo de la aplicacion. Hecho esto, lo que se consigue es tener todo en el mismo sitio y permite que se ejecute toda la aplicacion desde el paquete APK, por así decirlo, sin que haya interacciones desde fuentes externas como son los archivos .odex

Partimos de la base de que Android utiliza para ejecutar todo, una maquina virtual basada en Java que se llama Dalvik Virtual Machine. Bien, en el caso de aplicaciones deodexizadas, el fichero .dex que hay dentro del APK, es el que contiene la caché (codigo basé) de la aplicacion y que es utilizado por la DALVIK. En el caso de las aplicaciones ODEXIZADAS, la DALVIK utiliza el archivo .odex, que es la version mejorada y optimizada del archivo .dex. Requisito de este método es que el archivo .odex debe de estar en el mismo directorio que el APK y llamarse igual. Éste último, es el método usado por Android por defecto.

Cuando Android arranca, la caché de la maquina virtual DALVIK se llena con los archivos .odex, lo que permite a Android saber con antelación qué aplicaciones se cargaran y, como ya hemos comentado que el .odex es parte del código de la aplicación optimizado, se cargará todo mas rapidamente. DEODEXIZANDO los APK, como ya hemos comentado antes, permite tener TODO el codigo de la aplicacion en un mismo sitio, sin entrar en conflicto con el entorno de ejecución de ANDROID.

Extraido de http://www.htcmania.com/showthread.php?t=150816

Page 21: Mtk6577 manual de uso. version 6

Bien, dado que hablamos de Android hay que conocer un poco cual es el modelo de programación que existe, y a la par que es potente es simple. Ya he dicho que Android usa un sistema de programación JAVA (que no significa que el código generado para Android pueda ejecutarse por una VM JAVA). Básicamente, todo el código compilado para Android se empaqueta en un archivo apk (que no es más que un archivo zip) que contiene por un lado los recursos de la aplicación (imágenes, sonidos, archivos binarios…), por otro lado lo que podría verse como la interfaz de dicha aplicación, la firma y certificado de la aplicación y por último las librerías y el código principal de la misma, generalmente en formato DEX. DEX es por así decirlo el código compilado puro y duro de Android, la compilación para la máquina virtual Dalvik, digamos por así decirlo que es el “ejecutable” de las aplicaciones. Las firmwares de algunos fabricantes usan un sistema híbrido que permiten a las aplicaciones por así decirlo compartir código y otras cuestiones y se las conoce como ODEX. En la práctica lo que supone es que cada aplicación apk posee externa a ella otro archivo que la acompaña en formato ODEX, que contendrá tanto el propio código que contenía el archivo DEX como el código necesario para enlazar a esta el código que no se encuentra ni en el apk ni en el propio archivo ODEX, por ejemplo código compartido por muchas aplicaciones y que se reutiliza (lo que serían algo así como librerías dinámicas).

Es importante conocer si estamos ante el escenario DEX o el escenario ODEX, puesto que es diferente. Si estamos ante una aplicación DEX, tan solo tendríamos que realizar una decompilación, modificación, compilación firma y alineamiento. Pero en el caso de una aplicación ODEX antes de descompilar tendríamos que asegurarnos que podemos suministrar al decompilador la ubicación de esas “librerías externas” que requiere dicha aplicación, para que así al modificarlo y volver a compilarlo tengamos como resultado una sola aplicación DEX completamente independiente de otras librerías (por eso es necesario tener las librerías de “apoyo” de esta aplicación, código que será incluido en el propio DEX cuando compilemos de nuevo, y así poder prescindir del archivo ODEX e incluir el archivo DEX dentro de la aplicació). Al final de la conversión básicamente lo que tendremos será una aplicación DEX.

Vale, ya sabemos como se estructura una aplicación, y parece evidente los procesos de descompilar y volver a compilar (luego vemos como). Pero hay dos procesos que hay que realizar de igual forma, el firmado y el alineamiento. El firmado es obligatorio el alineamiento opcional (aunque recomendable).Cada uno será explicado a la par que vamos a usarlos. Empecemos, para no aburrir, con lo que tenemos entre manos

Extraido de http://www.todomovillg.es/elforodehomero/index.php?topic=284.0

Al lio. Para comenzar debemos tener una copia de la rom en nuestro disco duro. Ahora copiamos boot.img y system.img a “c\cygwin\ak\original_update“. Ejecutamos el programa de cygwin, entramos en “c:/cygwin/ak” y ejecutar “./menú”. Ejecutamnos el programa de cygwin, entramos en “c:/cygwin/ak” y ejecutar “./menú”. Seleccionamos la opción 1, otra vez la 1 (ya ha encontrado system y boot) y Enter. Nos ha creado un directorio en “c:/cygwin/ak” (comienza por working) donde nos copia el system y boot. Ahora elegimos la opción 2 y se nos abre un programa (llamado ext2explore) el cual puede leer ficheros con sistema de archivos ext3 y ext4. Seleccionamos “File>open image” y abrimos dentro de WORKING la carpeta system y seleccionamos el fichero system.img. Ahora extraemos el contenido dentro de la carpeta “c:/cygwin/ak/working/system”, para ello en el programa “ tools>save”. Ya podemos cerrar el ext2explore. Ahora que hemos terminado de extraer seleccionamos la opción 3 para retornar al menú anterior.

Estamos en el menú principal y seleccionamos 0 para entrar en opciones avanzadas. Ahora seleccionamos la opción 11 para deoxdexar los ficheros (recordar que cada apk de system tiene otro fichero de igual nombre con extensión odex). Seleccionamos la opción “ v “ y nos aseguramos de la versión de sistema operativo android que tenemos. En mi terminal API 15, corresponde Android 4.04 (al menos no me ha dado error). Ahora seleccionamos opción ” b “ (deoxdexar ambas ubicaciones: /system/app y /system/framework). Seleccionamos "n" , que no queremos fichero log y enter, a no ser que alguien quiera ver el log. Ahora toca esperar que tiene unas cuantas.

Debe terminar indicando un mensaje en pantalla que “quedan 0 ficheros por deoxdexar en ambas ubicaciones (0 files

Page 22: Mtk6577 manual de uso. version 6

remain)”. En este momento pulsamos intro y seleccionar opción “ 0 “ para retornar al menú anterior, ahora podemos seleccionar la opción 2, luego la opción “ f “ para root , retrocedemos al menú anterior, seleccionar “ 3 “ para copiar busybox. En mi caso no lo hago pues la imagen ya esta rooteada y me ha sido menos complicado con el otro programa de los otros post.

Una vez deoxdexado, los ficheros apk los podemos abrir como si se trataran de ficheros zip, de hecho los ficheros odex podeis comprobar que han desaparecido de /system/app. Si tenemos nuestro fichero system.img ( de unos cuantos megas) en el directorio “c:/cygwin/ak/working/system”, lo podemos borrar. En la guía pone que ahora podemos retroceder al menú principal y seleccionar la opción “ 10 “, ver el estado de nuestra rom.

Basicamente estamos hablando que el deodexar es para poder modificar cualquier aok. Lo podeis hacer manualmente: http://code.google.com/p/custom-rom-creator-studio/downloads/list descargáis el programa crcstudio (sin el mono) y tools_r1. Descomprimis todo y copiáis el contenido de tools_r1 en una subcarpeta dentro de crcstudio llamada “ tools “. Ejecutáis el programa, creáis un entorno en un directorio cualquiera, y ahora podeis abrir los ficheros apk y ver sus recursos. En nuestro caso abrimos framework-res.apk y SystemUI.apk . No podemos modificar nada, pero podemos ver todas las imágenes, el tamaño que tienen y la ruta del recurso (nombre). Ahora si alguien se quiere entretener, podeis modificar o sustituir las imágenes, eso si RESPETAR EL TAMAÑO y NOMBRE. Mi opinión personal es que parece que hay muchas imágenes que posiblemente no se utilizen nunca. Y tener en cuenta que podeis abrir CUALQUIER APK y ver sus recursos. Otr: editar /etc/theme/thememap.xml con notepad++ comprobareis que nos dice que archivos coge por defecto para todo.

Aquí os dejo un enlace que a mi no ma ha funcionado (siempre por lo mismo: no es tlf original). http://android.scenebeta.com/tutorial/personaliza-como-nunca-tu-android-con-uot-kitchen

RECOVERY LEWA TWRP : En este caso los archivos estan creados para hacerlos con android kitchen: son unos plugin. Descargo el recovery de LEWA (http://www.mediafire.com/?p4nig1lxysfqxo3) . Descomprimo todo. Copio los scripts al directorio “ c:\cygwin\ak\scripts\plugins”. Copio el directorio extraido “ mt65xx “ en “c:\cygwin\ak\tools”. Ahora ejecuto el cygwin, entro en el directorio de ak y ejecuto menú, escribir “ ./menú”. Si seguís los pasos os daréis cuenta que lo llegua a hacerlo, creo que borra antes los ficheros que empaquetar (editar con bloc de notas los ficheros de plugin y lo veréis). Pero si vamos al directorio mt65xx veremos dos comprimidos en 7zip: “twrp4b.7z y twrp3b.7z”. Abrirlos y veréis la famosa carpeta para empaquetar con nuestro kernel. Eso ya sabeis hacerlo. A mi no me ha gustado este recovery. http://chinagizmos.blogspot.in/2012/10/porting-touch-recovery-for-mt65xx-phones.html En este caso el TWRP 2.5 tiene dos comprimidos: el recovery y otro directorio con la resolucion de nuestra pantalla. Copiar el directorio “res” de vuestra resolucion dentro del directorio “recovery.img-ramdisk”.

6e. Modificar app (apktools, apkmanager) : Enlace de los dos programas http://apkmultitool.com/?q=node/5

Estos programas son un “conjunto de programas” reunidos en una misma interfaz, al igual que android kitchen. La diferencia es que no necesitan de CYGWIN para trabajar.

No he manejado mucho los programas apk manager y apk multi tools, pero si quereis probar os dejo este enlace de ejemplo: http://forum.xda-developers.com/showthread.php?t=1989897 El tema del enlace es Quitar Google ads de cualquier apk: el ads es la publicidad, y es raro tener apk freeware sin publicidad. Y digo que no se si servira porque si la publicidad la baja de internet, y tenemos conexion....volvera a bajarla (creo yo), o simplemente se actualiza el programa y estamos en las mismas. Pero da igual, mientras cacharreamos un poquito. La idea es eliminar un subdirectorio llamado “ads” dentro de otro directorio llamado “smali”.

Page 23: Mtk6577 manual de uso. version 6

En este manual usa APK-MULTI TOOLS.

Pasos 1, 2 ,3 --> Copiar la apk deseada a un directorio de nuestro PC. En el manual nos habla en estos 3 pasos como localizarla en nuestro tlf. Ya sabemos hacer esto (en /mnt/asec o /data/app).Paso 4 --> Descargamos apk-multitool y ejecutamos el setup. Pulsamos opcion 3 (crear directorios de trabajo) y luego 00 (salir). Nos ha creado los directorios "place-........." en la carpeta de apk multitool. Copiamos la apk a modificar en " \APK_Multi-Tool\place-apk-here-for-modding "Paso 5 --> Ejecutar script.bat, decompilamos con opcion 9. Una vez decompilada en el directorio " \APK_Multi-Tool\projects " hay un subdirectorio con el nombre de la apk decompiladaPaso 6 --> Quitar la publicidad de la apk (o modoficamos lo que deseemos: imagenes, etc). Para ello buscamos y eliminamos la carpeta " ads " de nuestra apk decompilada.Paso 7 --> Compilamos de nuevo la apk, opcion 12. Luego seleccionamos opcion 3 para firmar la apk modificada (copia la firma de la apk original). Una vez terminado el proceso tendremos en el directorio " \APK_Multi-Tool\place-apk-here-for-modding folder " la apk firmada sin ads. Le ha añadido la palabra signed al nombre original de la apk. Pulsamos 00 para salir.Paso 8 --> Instalar nuestra apk y a probar.

En este manual usa APK MANAGER.

Pasos 1, 2 ,3 --> Copiar la apk deseada a un directorio de nuestro PC. En el manual nos habla en estos 3 pasos como localizarla en nuestro SP. Ya sabemos hacer esto.PAso 4 --> Ejecutar script.bat. Yo en este caso primero hacemos limpieza de directorios de trabajo con opcion 18, luego 3 (nos limpia el contenido de los mismos, si quereis. Si no quereis limpiarlos no pasa nada). Esta limpieza tambien vale para crear de nuevo los directorios. Copiamos la apk a modificar en " \APK_Manager\place-apk-here-for-modding "Paso 5 --> Opcion 22 (selecciono apk) y opcion 9 (decompilar). Una vez decompilada en el directorio " \APK_Manager\projects " hay un subdirectorio con el nombre de la apk decompiladaPaso 6 --> Quitar la publicidad de la apk (o modoficamos lo que deseemos: imagenes, etc). Para ello buscamos y eliminamos la carpeta " ads " de nuestra apk decompilada.Paso 7 --> Compilamos de nuevo la apk, opcion 11. Luego seleccionamos opcion " y " para firmar la apk modificada (copia la firma de la apk original). Una vez terminado el proceso tendremos en el directorio " \APK_Manager\place-apk-here-for-modding folder " la apk firmada sin ads. Le ha añadido la palabra unsigned al nombre original de la apk. Pulsamos 24 para salir. (ahora debemos firmarla: sign in)Paso 8 --> Instalar nuestra apk y a probar.

6f. Modificar un backup de CWM: Una imagen de ClockWorkMod tiene unos archivos imagen y un archivo md5. En todas las imágenes CWM copia boot.img , recovery.img, /data, /system, /cache y android.secure. Si editais con Notepad++ el archivo nandroid.md5 vereis que tiene los checksum de los archivos copiados. Los archivos estan comprimidos en tar, por lo que cualquier compresor nos valdria para ver su contenido (winrar, winace, winzip, powerarchiver, 7zip, IZArc….), y por lo tanto podemos cambiarlo. Recomiendo IZArc y 7zip que son freeware y tienen la opcion de comprimir en tar.

Primero copiar el directorio que contiene la imagen a nuestra sdcard.

1ª prueba >> Una vez copiado el directorio, con el programa “FlashSfv” http://www.trvx.com/flashsfv/ abrimos nandroid.md5 y pulsamos “check”. Leera el contenido y comprobara si es correcto.

Page 24: Mtk6577 manual de uso. version 6

2º prueba >> Vamos a modificar el contenido: para ello podemos añadir/modificar algo de los ficheros tar (por ejemplo añadir una aplicación a /system/app) o cambiar el recovery.img por otro. Yo solo lo he usado para cambiar boot.img y recovery.img, los otros los modifico con el tlf operativo que para eso soy root.

Una vez modificado lo comprimimos en tar de nuevo. Es obvio que al modificar el archivo, el checksum ha cambiado (podeis hacer de nuevo la 1º prueba y vereis que da error). Pues en este punto yo decidi borrar nandroid.md5 y generar uno nuevo: Abro “FlashSfv”, pulso “new”, añado los archivos y pulso “create” y le doy el nombre de “nandroid.md5” al fichero. Lo copio al directorio de mi CWM en la sdcard e intento restaurarlo y …. ME DA ERROR. ¿Por qué? Si comparamos uno original creado con CWM y el creado por FlashSfv observaremos dos diferencias: letras minusculas y dos espacios de separacion entre el nombre y la suma. Ademas me he descargado “Atribute Changer 7.10c” y le he modificado la fecha de creacion para adaptarla a la copia, pruebo de nuevo y…..ME VUELVE A DAR ERROR.

SOLUCION: debeis crear nandroid.md5 con el programa que trae android. Para ello copiais vuestro directorio ya modoficado a vuestra sdcard (donde querais), abris una consola de comandos, entrais al directorio en cuestion y escribis “busybox md5sum *.* > nandroid.md5” :nos creara el fichero con los checksum. Ahora copiais vuestro directorio a la ubicación donde busca CWM para restaurar las copias (/mnt/sdcard/clockworkmod/backup/) y ya teneis solucionado el tema. Si queremos podemos hacerlo en cygwin.

Nota: procurar no tener mas de 3 o 4 copias o cambiarle el nombre al directorio para conocer su contenido.

7. ADB : Cuando arranca el tlf (modo normal o recovery) y lo conectamos al ordenador se comunica con el comando ADB. Podemos comunicarnos con programa grafico en en el Pc (yo uso QTADB para Windows) o podemos usar modo texto en el PC. Conectar vuestro tlf con depuracion activada.

Para el modo texto nos hace falta los archivos: si mirais en mtkdroidtools teneis un subdirectorio llamado adb. Dentro tenemos los archivos necesarios. Ahora abrir una ventana dos en ese directorio o ejecutais mtkdroidtool, pulsais sobre “ADB terminal”y se abre una ventana dos el directorio (y si no entrais en ella con “cd adb”). Escribir “adb” y entrar. Con esto vemos que el programa lo tenemos operativo. Ahora ejecutar “adb devices”, si encuentra nuestro tlf nos mostrara mediante un nº de serie que lo ha encontrado. Podeis ejecutar cualquier orden, como si estuvierais escribiendo en el propio tlf.

En modo grafico podemos realizar tareas basicas de copiar,mover……pero el modo texto es el mas potente: lo controlamos todo si sabemos el uso de comandos basicos de android (linux) por la consola.

7a. Comandos basicos en android >>

7b. Ejemplo de copiar APK mediante ADB >> La mayoria de los problemas cuando somos root provienen de archivos que hemos modificado o eliminado. Para ambos casos la primera norma es copia o renombrado del archivo original en su mismo directorio. Sin embargo en el caso de apk, si las dejamos en el mismo directorio android nos la vuelve a instalar. Asi que tendremos que moverlas de ubicación (lo mas recomendable) o borrarlas.

Pondremos un ejemplo de uso con ADB: yo tengo una rom odex y lo que voy a hacer es deodexarla y meterla al movil. Para ello haremos dos procesos: 1) deodexar con Android kitchen, 2) copiarlo al telefono. Este ejercicio os servira de ejemplo para copiar apk borradas y ello os da errores de aplicacion.

Proceso 1) Deodexar las apk: este paso esta explicado en el punto 6d

Proceso 2) Copiar las apk al tlf : la idea es copiar todo lo deodexado a su mismo directorio.

Lo primerisimo, BACKUP DE VUESTRO MOVIL. Arranco el tlf pulsando " power+volumen up " y cuando aparece el menu para elegir el arranque de fastboot o recovery, no elegimos nada o arrancamos en modo recovery. La diferencia entre un arraque u otro es que no nos monte los directorios y lo tengamos que hacer a mano. Conectamos el tlf al pc. Tengo mi rom deodexada en un directorio en la unidad D llamado COPIA. Copio aqui dentro mi \system deodexado (cada uno cree su directorio en la ruta que quiera y la sustituya por lo dicho aqui).

Page 25: Mtk6577 manual de uso. version 6

Ahora me interesan las carpetas que tienen odex: http://www.4shared.com/rar/RCy0UvEO/apk_signapk.html 1.1) d:\copia\system\app2.2) d:\copia\system\framework3.3) d:\copia\system\vendor\app4.4) d:\copia\system\vendor\operattor\app

Copio mi fichero " 0_copiar.bat " a cada directorio anterior. Contenido del fichero " 0_copiar.bat " (la funcion es copiar las apk y jar del PC al tlf en su mismo directorio):

1.1) d:\copia\system\app

@ pause@ FOR %%Y IN (*.apk) DO adb push %%Y /system/app/%%Y@ pause

2.2) d:\copia\system\framework (recordar que jar tambien estaban odex)

@ pause@ FOR %%Y IN (*.apk) DO adb push %%Y /system/framework/%%Y@ FOR %%Y IN (*.jar) DO adb push %%Y /system/framework/%%Y@ pause

3.3) d:\copia\system\vendor\app

@ pause@ FOR %%Y IN (*.apk) DO adb push %%Y /system/vendor/app/%%Y@ pause

4.4) d:\copia\system\vendor\operattor\app

@ pause@ FOR %%Y IN (*.apk) DO adb push %%Y /system/vendor/operator/app/%%Y@ pause

Ahora copio los ficheros a cada directorio: signapk.jar, testkey.pk8, testkey.x509.pem, zipalign.exe. Nos serviran para optimizar las aplicaciones. Ahora copio mi fichero " 0_firmar_alinear_renombrar_directorio_actual.bat " a cada directorio anterior. En este caso el contenido del fichero es el mismo para todos, lectura del fichero:

@ pauserem eliminamos por si acaso forzando borradodel 1firmado*.* /F /Qdel 0alineado*.* /F /Q

rem Ahora firmamos con signapkFOR %%f IN (*.apk) DO java -jar signapk.jar testkey.x509.pem testkey.pk8 %%f 1firmado_%%f

rem Ahora alineamos con zipalingFOR %%h IN (1firmado*.apk) DO zipalign -v 4 %%h 0alineado_%%h

Page 26: Mtk6577 manual de uso. version 6

rem paso parametros a la etiqueta label@ FOR /R %%X in (0alineado*.apk) DO call:label %%~nXrem fin de bucle FORgoto:fin

:labelset uno=%1set dos=%uno%rem renombro con copy forzando sobreescribir. Elimino la premisa (0alineado_1firmado_)copy %uno%.apk %dos:~19%.apk /Y rem informo fin de etiqueta para retorno a comando FORgoto:eof

:finrem eliminamos los generados forzando borradodel 1firmado*.*del 0alineado*.*@ echo programa terminado@ pause

Ahora en la carpeta donde tengo instalado mtkdroidtools, vereis que hay una carpeta llamada "adb". Copiar los tres ficheros (adb.exe, AdbWinApi.dll, AdbWinUsbApi.dll) a cada directorio anterior.

Empezamos la fiesta: ejecutamos "0_firmar_alinear_renombrar_directorio_actual. bat" de cada directorio y nos optimizara las apk. Cuando termine, se cierran las ventanas dos.

Abrimos una consola en windows y nos desplazamos a d:\windows\system\app (observar las \ en windows y / en linux). Ejecuto:

adb devices (nos debe salir nuestro nº de serie del dispositivo)adb shell (abrimos una shell del tlf en nuestra ventana dos)su (verificar # de superuser)cd /system/app (entramos a /system/app)ls -l (lista apk y odex. Observar permisos y propietario)rm *.* ( y aqui puede estar la pega: es solo lectura)mount | grep system (vereis que si sale ro: solo lectura)mount -o rw,remount /system ( remonto como escritura )mount | grep system (vereis que sale rw: escritura)rm *.* (ahora si me deja borrar)ls -l (no tengo nada)exit (salgo a dos. Ahora estoy en "msdos", en el directorio d:\windows\system\app)0_copiar (y veremos como copia las apk a system del tlf)adb devicesadb shellsucd /system/appls -lchown root.root *.* (cambio propietario)chmod 644 *.* (cambio permisos)

Page 27: Mtk6577 manual de uso. version 6

ls -l (verifico los cambios)exit (salgo de superuser)exit (salgo de la shell del tlf)exit (salgo de la ventana dos)

Y aqui repetimos el mismo proceso para todos los directorios anteriores que faltan (2.2, 3.3, 4.4). Ya tenemos copiadas las apk deodex. Si teneis CWM instalado y leisteis el manual de cwm en el punto Fix permissions, os habreis dado cuenta que al tener nuevas apk (aunque sea mismo nombre) puede ser que se creen PID diferentes. Podemos arrancar el tlf y funcionar todas las aplicaciones OK, sin perdidas de datos o puede ser que algunas dejen de funcionar. En este caso debemos ejecutar el script para Fix permisos (y rezar para que funcione).

Pero si optamos por instalacion nueva (lo mas normal), hay que borrar /cache y /data. Si hemos iniciado en recovery podemos hacer esto con Wipe data/Factory reset, que es lo mas rapido y seguro. Y si alguien se anima que lo haga por ADB. Ya lo tenemos todo. Reiniciamos el tlf. En mi caso despues de aburrirme, el logo queda sin animacion, por lo que quito bateria y reinicio. Idem.

Para mas comandos adb buscar por google y veréis la cantidad de pagina. OS dejo alguna:http://www.elandroidelibre.com/2013/...s-conocer.htmlhttp://www.androidvzla.com/2012/02/1...-adb-para.htmlhttp://www.androidsis.com/comandos-b...l-sdk-android/

8. Recuperar imei : Si habeis cambiado la rom y ya no detecta los imeis….siento comunicaros que los tendreis que poner de nuevo cada vez que se borre /data, es decir, en cada factory reset (a no ser que podais recuperar una copia de vuestro soft del movil). Para recuperarlos hay dos maneras: generar el archivo necesario o enviarlo con comando AT en modo ingeniero.

Modo 1: descargamos http://www.4shared.com/rar/zO1pZicB/IMEI_Generador_mtk6577.html

Ejecutamos IMEI Generator.bat, pulsamos opcion 1 (start), nos pide el imei1 y el imei2. Nos muestra los imeis para verificarlos, presionamos sobre “j” para confirmar y nos ha creado en su mismo directorio el archivo MP0B_001. Pues este archivo debemos copiarlo a “/data/nvram/md/NVRAM/NVD_IMEI/” sobreescribiendo el que hay. Reiniciamos y listo.

Modo 2: Entramos en modo ingeniero, para ello hay dos maneras: 1) Instalamos “ mobileuncletools” por playstore, lo ejecuto y entro en “Modo Engineer>Modo Engineer (MTK) . 2) marcar en el tlf *#*#3646633#*#*

Una vez dentro vamos a “CDS information>Radio Information “ . Ahora entro en Phone 1 o Phone 2, es indiferente. Nos saldra la ventana con AT+ , si escribimos a continuacion E nos aparece las dos opciones: AT +EGMR=1,7,"" y AT +EGMR=1,10,"" .La del 7 es para Sim1 y la del 10 para Sim2. Seleccionamos la deseada. Y el truco esta aqui:

SOLO DEBEMOS ESCRIBIR LOS 15 DIGITOS DEL IMEI. PARA ELLO HACEMOS UNA PULSACION Y APARECE EL CURSOR, SITUARLO ENTRE LAS DOS COMILLAS Y ESCRIBIR LOS 15 DIGITOS. LE DAIS A ENVIAR COMANDO (SEND AT COMMAND) Y SI FUNCIONA DICE " AT COMMAND SEND". EL TRUCO ES ESE: SOLO ESCRIBIR LOS DIGITOS, NO SE PORQUE DETECTA LAS DEMAS PULSACIONES Y LAS INTERPRETA ERRONEAMENTE (EN REALIDAD ES QUE SE ESCRIBE TODO SEGUIDO: SIN ESPACIOS: AT+EGMR=1,10,"IMEI_2" ….. AT+EGMR=1,7,"IMEI_1" )

http://chinagizmos.blogspot.in/2012/10/imei-problems-backup-restore-no-service.html

9. Recalibrar bateria : En cada cambio de /system (android) recomiendan recalibrarlo. Esto es porque el fichero de calibracion es /data/system/batterystats.bin. Este fichero es el que guarda la informacion del nivel de carga

Page 28: Mtk6577 manual de uso. version 6

(desde 0 a 100%), de manera que supon que tu 100% son 4V y el fichero tiene que a los 3.5V es 100%, nunca llegara a cargar a tope y a la inversa: si las medidas las hace mal no estamos aprovechando nuestra bateria correctamente. Para calibrarlo bajate algun programa y seguis sus instrucciones de uso.

El fichero solo te va a decir el nivel de carga, si la bateria esta cascada eso no se soluciona. No es conveniente estar recalibrando bateria cada vez que se cambia: yo recomiendo hacerlo si notais que la bateria os dura muy muy poco en comparacion a cuando comprasteis el movil o si habeis metido un android nuevo (cambio de version o no) y notais menos duracion.

10. Backup de la agenda de contactos: puede parecer una chorrada este punto, pero os aseguro que al principio es un coñazo pues me tocó hacer varias pruebas. La agenda de contactos es una de las cosas mas importantes que hay, y cuando nos gusta probar y probar…..al final nos pasa que perdemos alguno o tenemos tantas copias que hay que importar todo y revisar. Os explicare la base para una buena organización.

Este punto funciona con ICS, no se con cual mas. ¿Por qué tengo repetidos tantos contactos?? Esta pregunta es la primera que nos hemos hecho muchos. En los antiguos tlfs si le damos a mostrar contactos de sim y tlf nos aparecian contactos duplicados ¿no?, pues aquí igual. Con los tlf antiguos solo teniamos tres ubicaciones: sim, tlf y el servidor del proovedor. Con los smartphone la filosofia es la misma solo que aumentan las ubicaciones. Tenemos phone (tlf), tarjeta SD (particion fat32 de tarjeta fisica SDCard), Almacenamiento del tlf (particion fat32 del tlf, a veces llamado SDCard2), Proovedor de servicios (Movistar en mi caso), mi nº de tlf (sim1), mi nº tlf (sim2) y tantas cuentas email como tenga abiertas (hotmail, gmail……).

Para tener la agenda en un mismo fichero hay que exportar cada una de las ubicaciones a la sdcard, y tendremos tantos ficheros vcf como ubicaciones. Luego en contactos que mostrar seleccionamos todos y los borramos. Lo confirmamos mostrando uno por uno cada ubicación y viendo si tiene contactos en la agenda Tras esto importamos TODOS los ficheros a una sola ubicación: phone. Ya tenemos todos los contactos en el tlf, hacemos un backup del phone y tenemos un unico fichero con todos. Ahora yo hago siempre otra copia en gmail Para ello exporto los contactos de phone a la cuenta de gmail (los he copiado en el tlf en la cuenta de gmail) y despues sincronizo contactos de gmail (copio contactos diferentes en ambas ubicaciones: mi cuenta de gmail en el servidor y en el tlf). Aquí podemos hacer backup tambien si tenemos contactos en gmail o borrarlos si estamos seguros que ya los tenemos.

Ya los tenemos todos, pero toca editarlos para eliminar duplicados, modificar nombres……. Para mi la manera mas rapida es directamente en el servidor de gmail desde el ordenador, y a la hora de sincronizar me los deja en el tlf tal cual. OS lo digo porque he probado importar desde gmail a un fichero e importarlo al phone y no salen igual los campos.

Una vez modificados en gmail, borramos todos los contactos de todas las ubicaciones del tlf. Ahora sincronizamos la cuenta de gmail (ya lo tenemos en gmail del tlf) y tras esto exportamos de la cuenta de gmail del tlf al phone. Despues borramos los contactos de la cuenta del tlf gmail, no del servidor.

Ahora bien, debemos hacer siempre un mismo procedimiento para insertar contactos: 1). copiarlos siempre a la misma ubicación (en mi caso phone) 2). Podemos insertar un nuevo contacto directamente de la agenda (600 600 600) o haciendo una llamada perdida (600600600). Notar que no son el mismo numero, el primero lleva espacios. Pero ademas, algunos le añaden +34 delante, ya tenemos otro numero mas. Esto no es problema porque podemos añadir varios numero a mismo contacto, pero tenerlo en cuenta por que se nos dispara la cantidad de contactos y si tenemos limite es muy importante (p.ej en la sim tenemos limite).

Ha sido muy facil, verdad, y no creo haber contado nada nuevo. Otra cosa: yo tengo la sincronizacion manual, cada uno que lo ponga como mejor le venga. Lo importante es saber como funciona.

Page 29: Mtk6577 manual de uso. version 6

11. GPS : Lo suyo seria explicar algunos conceptos en este punto para entender gps y asi poder trastearlo con conocimiento, pero simplemente voy a poner el enlace seguido http://www.chinasmartphonereview.com/fix-gps-questions-from-fastcardtech/ .

Entramos en modo ingeniero, para ello hay dos maneras: 1) Instalamos “ mobileuncletools” por playstore, lo ejecuto y entro en “Modo Engineer>Modo Engineer (MTK) . 2) marcar en el tlf *#*#3646633#*#* . Una vez dentro vamos a “LocationBasedService>GPS “, activamos GPS a ON y se pone a buscar (comprobamos si desplazamos la pantalla hacia abajo como lo hace). Ahora pulsamos sobre VIEW (dejarlo 5 minutos al menos y probar fuera de casa) y deberan comenzar a mostrar satelites en rojo, de tal manera que cuando se pongan de color verde estan ya “identificados y sincronizados”. Una vez hecho esto deberia funcionar vuestro gps, yo he probado el tomton de nuestro compi @Host_11 (http://www.movilesdualsim.com/foro/threads/22396-Backup-firmware-SMARPHONE-F9300-mtk6577/page24 ) y me funciona….aunque no como yo creo que debiera pero de momento funciona. Faltan hacer mas pruebas.

Si seguis leyendo, el metodo dos dice que si no os funciona os descargueis el fichero gps.conf y lo copiais a /system/etc/, reiniciais el phone (mejor ponerle todos los permisos una vez copiado y renombrar el original en el mismo directorio y respetar minusculas) y repetir el proceso anterior. Hay tambien un fichero “/data/misc/mtkgps.dat” que podeis tambien probar a renombrar (y luego reinicio de phone).

El fichero gps.conf es un fichero de configuracion y si lo editamos:

gps.conf original de mi tlf

NTP_SERVER=ntp.derekgordon.com

AGPS=http://derekgordon.com/gps-files/bin/xtra.bin

XTRA_SERVER_1=http://derekgordon.com/gps-files/bin/xtra.bin

XTRA_SERVER_2=http://xtra3.gpsonextra.net/xtra.bin

XTRA_SERVER_3=http://xtra2.gpsonextra.net/xtra.bin

DEFAULT_AGPS_ENABLE=TRUE

DEFAULT_USER_PLANE=TRUE

DEFAULT_SSL_ENABLE=FALSE

INTERMEDIATE_POS=1

ACCURACY_THRES=3000

QOS_ACCURACY=50

QOS_TIME_OUT_AGPS=95

QOS_TIME_OUT_STANDALONE=80

QosHorizontalThreshold=1000

QosVerticalThreshold=500

AssistMethodType=1

AgpsUse=1

AgpsServerType=1

Page 30: Mtk6577 manual de uso. version 6

AgpsServerIp=3232235555

AgpsMtConf=0

AgpsMtResponseType=1

SUPL_HOST=supl.google.com

SUPL_PORT=7276

#SUPL_SECURE_PORT=7275

SUPL_NO_SECURE_PORT=3425

#SUPL_TLS_HOST=FQDN

#SUPL_TLS_CERT=/etc/SuplRootCert

REPORT_POSITION_USE_SUPL_REFLOC=1

CURRENT_CARRIER=common

PHONE_TYPE=UMTS

gps.conf que he descargado de la web

NTP_SERVER=1.cn.pool.ntp.org

NTP_SERVER=2.asia.pool.ntp.org

NTP_SERVER=europe.pool.ntp.org

XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin

XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin

XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin

SUPL_HOST=sls1.sirf.com

SUPL_HOST=sls2.sirf.com

SUPL_HOST=supl.google.com

SUPL_HOST=supl.nokia.com

SUPL_PORT=7276

C2K_HOST=default

C2K_PORT=0

12. Actualizacion del manual: colaboracion de TODOS : Este manual ha sido trabajadada durante mucho tiempo, pero si la dejamos asi quedaria obsoleta. Por lo tanto pido colaboracion de TODOS para ir actualizandola: añadir guia de

Page 31: Mtk6577 manual de uso. version 6

nuevos programas, añadir funciones de programas tratados aquí pero aun no mencionados, añadir nuevos puntos e incluso modificar los ya exixtentes (ejemplo especificando cpu, sistema operativo….) y como dije antes añadir capturas de pantalla.

Se ma ha ocurrido una manera facil de ir haciendo esto: nos descargamos el documento y ponemos un post donde indicamos que vamos a modificar, de esta manera ya sabemos que un compi ya esta en el tema ese. Para la publicacion iremos añadiendole la coletilla “version”, de tal manera que cada vez que subamos el documento comprobamos la ultima version a descargar, le añadimos el nuevo numero de version y lo publicamos en un post.

Os parece bien??

12+1. Personalizar tu diccionario Android: el enlace seguido http://forum.xda-developers.com/showthread.php?t=1723574

En este caso explicare como añadir una lista de palabras en nuestro diccionario predictivo: cosa que no entiendo porque en android no permite importar una lista de palabras. El programa se llama Sqliteman y como tengo windows la descarga es http://sourceforge.net/projects/sqliteman/files/latest/download . Lo descargais y lo descomprimis en un directorio. En la web tambien nos da uns enlaces de wordlist ya creados. En nuestro ejemplo lo crearemos nosotros.

El fichero que almacena la base de datos de nuestras palabras del diccionario predictivo es “data/data/com.android.providers.userdictionary/databases/user_dict.db”. Me he creado un subdirectorio donde he descomprimido Sqliteman llamado BBDD y ahí copio el fichero “user_dict.db”.

Ejecuto “sqliteman.exe”, “file>open>user_dict.db”. Ahora expando tables y words (pincho sobre el +). Selecciono words y puedo observar le contenido de mi diccionario y su formato. Pulso sobre “Export data” (junto imagen de mona lisa), lo exporto (Formato=csv; Encoding=UTF8; Line end= MS Windows) a mi directorio BBDD y le pongo nombre “exportado.csv”. Ahora lo edito con Notepad++ y sustituyo todos los “, “ por ; y todos los “ por ; y lo guardo. En la exportacion puedo omitir exportar el encabezado (deselecciono “Exports header too”) y asi me evito eliminar la fila del encabezado despues en el fichero csv.

Ahora abro con Excell y me salen 6 columnas, la primera que esta vacia la elimino. Ahora fijaros en el formato: la 1º columna indica numero de linea, la 2º la palabra del diccionario, la 3º ni idea de momento, la 4º la pagina de codigos y la 5º indica 0 (ni idea).

Si os meteis en “Configuracion>Idioma y entrada>Diccionarios personales” vereis que tenemos dos: español y español (España). Pues bien, la columna 4º indica a cual pertenece. Pondremos las palabras en un diccionario solo, da igual.

Ahora vamos a crear nuestra lista de ejemplo: creamos un fichero llamado lista y le añadimos las palabras que queramos, cada palabra en una linea (es decir, una palabra y ENTER). Hacerlo con Notepad++. En este ejemplo he añadido:

Primero

Segundo

Tercero

Cuarto

Quinto

Sexto

Septimo

Octavo

Page 32: Mtk6577 manual de uso. version 6

Noveno

Decimo

Copiamos las palabras y las pegamos en la 2º columna. Ahora en la 1º columna ponemos los numeros de linea correlativos, en la 3º y 4º columa que coincida como en los demas (yo he puesto a todo 128 en la 3º y es en la 4º) y la ultima columna 0. Guardamos el fichero de excell, con su formato csv.

Vamos a importarlo. En el programa de Sqlite seleccionamos “words”, vamos a “Database>import table data…” y seleccionamos el fichero de csv. En las opciones seleccionamos “semicolon”, y nos muestra una vista previa. Aceptamos y ya esta. Nos dara un error indicando que hemos intentado importar lineas que ya existen, pero solo exporta a partir de las lineas que no tiene. Si queremos evitar esto (creo que es lo mejor), cuando editamos el fichero csv fijarse en el numero de lineas que ya tenemos en nuestra base de datos en “user_dict.db” y antes de importar eliminarlas del fichero csv a importar (incluyendo el encabezado).

Pero podemos personalizar mas nuestro diccionario. Imaginaos que queremos eliminar palabras, sobreescribir otras o eliminar duplicados. Si queremos eliminar unas pocas palabras podemos hacerlos desde el propio android: entramos en el diccionario en cuestion, buscamos la palabra y la eliminamos. Si queremos eliminar una fila con Sqliteman, seleccionamos la fila y le damos a eliminar (“Remove Row”), o podemos eliminar toda la tabla, seleccionamos todo en la esquina superior izquierda de la tabla y selecciono “Truncate Table”. Tras esto actualizo la tabla con la flecha verde, y esperais un poco a que muestre la actualizacion en pantalla.

En mi opinion es mas facil y comodo de trabajar con el fichero csv en excell (eliminar duplicados, añadir,etc) y tocar la tabla con Sqliteman para añadir todo del tiron.

Cerramos el programa “File>exit” , lo abrimos de nuevo y volvemos a abrir nuestra base de datos para comprobar que ha importado las palabras ó actualizamos pulsando sobre una flecha verde hacia abajo (“commit the current transation in the result table”). Si es todo correcto copiamos el nuevo fichero “user_dict.db” a su ubicación original, SIEMPRE PREVIA BACKUP DEL FICHERO ORIGINAL. Luego le cambiamos los permisos y a probarlo. Yo siempre reinicio por si acaso.

Un par de cosas curiosas: 1) si añadimos la misma palabra en lineas diferentes, android la añade al diccionario pensando que son diferentes, aunque luego solo muestre una coincidencia. 2) no hace falta añadir mas de una vez la misma palabra, ya que el mismo android nos la modifica para usarla en mayusculas o minusculas sin problemas.

Nota importante: a veces no funcionan ciertos programas cuando sustituimos/modificamos archivos, aun teniendo el mismo nombre y los mismos permisos (caso de user_dict.db). Probar asignar todos los permisos al fichero nuevo/modificado (rwxrwxrwx). Asi deberia funcionar. Esto creo que es por lo del famoso PID que hablemos en el pos del “Manual de CWM”, pero no estoy seguro.

Ahora solo falta un buen wordlist.txt y todo hecho: buscar lemario en google o programas para generar wordlist de textos, pgs web, etc. Y no olvidar salvar vuestro user_dict.db como.......si fuera vuestro imei.

http://www.teoruiz.com/archivos/2010/10/17/lemario-actualizado-espanol/

http://olea.org/proyectos/lemarios/