Home Menu

Menu



ROMs y desarrollo HTC Magic ROMs y desarrollo HTC Magic


 
Herramientas
  #1  
Viejo 26/09/09, 20:47:03
Avatar de deltafranc
deltafranc deltafranc no está en línea
Miembro del foro
Mensajes: 119
 
Fecha de registro: may 2009
Mensajes: 119
Modelo de smartphone: htc magic
Versión de ROM: [ROM/4.2.2] [Feb 17 2013] VJ CM10.1 | Jelly Bean 4.2.2 - v4.7.1
Mencionado: 0 comentarios
Tagged: 0 hilos
como se firma una ROM??

vamos a ver, yo hago un retoque en una room, lo mas facil, paso las app_s a app, de esta manera dentro de mi ignorancia entiendo que todas estas aplicaciones las podré borrar una vez instaladas, pero na vale con hacer este cambio, creo que antes de instalarla hay que firmarla, ¿como se hace? tengo un tuto, pero no me vale, o no sé hacerlo bien, alguien me puede echar una manita?

Última edición por deltafranc Día 27/09/09 a las 21:23:43
Responder Con Cita


  #2  
Viejo 27/09/09, 11:14:38
Avatar de superatmel
superatmel
Usuario invitado
Mensajes: n/a
 
Mensajes: n/a
Mencionado: comentarios
Tagged: hilos
ridli
Cocinero oficial
Fecha de Ingreso: may 2009
Mensajes: 251
Modelo de PDA: G1
Versión de ROM: Donut


Como crear un update.zip
Con este tutorial vamos a aprender como generar nuestro propio UPDATE.ZIP desde 0 o bien desde uno ya generado y para ellos vamos a necesitar varias herramientas.

- JDK actualizado.
- certificado testkeys
- herramienta para firmar signapk.java
- script de actualizacion
- Testkeys: este certificado es con el que se firma el source de android cuando lo compilamos por lo tanto podemos encontrarlo en el mismo source
build/target/product/security/testkey.pk8
build/target/product/security/testkey.x509.pem
- Signapk.java: esta pequeña aplicacion tambien esta en el source de android.
build/tools/signapk/SignApk.java
- update-script: Es el script de actualizacion con el que se generaran los enlaces simbolicos y se flasheara boot, system o lo que nosotros queramos, este script esta dentro de una serie de subdirectorios dentro de META-INF. /META-INF/com/google/android/update-script

Antes de seguir vamos a ver la estructura de un update generico, estos paquetes por norma general contienen una imagen boot.img asi como un directorio SYSTEM y META-INF.
- boot.img : Imagen de arranque con la que se va a flashear nuestro telefono al actualizar. (opcional)
- SYSTEM: nuestra directorio de system modificado con el que actualizaremos nuestro telefono.
- META-INF: lugar donde se guardaran las firmas y el script de actualizacion.

Si no tenemos descargado el source de android podemos descargarnos los archivos necesarios aqui http://rapidshare.com/files/166164961/AndroidMod.zip enlace cortesia de JF.

1) Primero creamos una carpeta para nuestro proyecto y copiamos todo lo necesario, en este caso vamos a trabajar con un source compilado por nosotros y un update-script ya creado para ahorrarnos tiempo.

mkdir /<ruta>/update_android1
cd /<ruta>/update_android1
cp /<ruta_source>/build/target/product/security/testkey.pk8 .
cp /<ruta_source>/build/target/product/security/testkey.x509.pem .
cp /<ruta_source>/build/tools/signapk/SignApk.java .
cp -r /<ruta_source>/out/target/product/dream/system .
cp /<ruta_source>/out/target/product/dream/boot.img
mkdir -p META-INF/com/google/android


2) Ahora hay que descargar este update-script para ahorrarnos algo de tiempo y un binario de busybox en el mismo paquete. http://www.megaupload.com/?d=XC5AWXXD
descomprimirmos el archivo y copiamos el contenido en su lugar correspondiente ya que vamos a añadir BUSYBOX a nuestra build.

cp /<ruta>/busybox system/xbin
cp /<ruta>/update-script META-INF/com/google/android


El contenido del update-script muy simple pero no hay que despistarse ya que es necesario que este correctamente creado ya que un fallo de sintaxis puede dar al traste todo nuestro trabajo. Dentro de este script nos podemos encontrar con lo siguiente (es un archivo muy largo asi que solo indicare lo importante)
format BOOT: (borra boot)
show_progress 0.1 0 (muestra progreso)
show_progress 0.5 0
format SYSTEM: (borra SYSTEM)
copy_dir PACKAGE:system SYSTEM: (copia el directorio system en la particion SYSTEM)
set_perm_recursive 0 0 0755 0644 SYSTEM: (cambia los permisos de SYSTEM)
(...)
set_perm 0 2000 0755 SYSTEM:xbin/showslab (asigna permisos al binario showslab)
(...)
symlink /system/xbin/busybox SYSTEM:xbin/date ( crea un enlace simbolico de busybox con nombre date)
(...)
write_raw_image PACKAGE:boot.img BOOT: (flashea BOOT con boot.img)

IMPORTANTE: si un enlace simbolico esta mal creado, ha sido declarado con anterioridad o un archivo no existe dara un error al aplicar el update.zip asi que hay que tener mucho cuidado con este archivo.

3) Ahora procederemos a comprimir META-INF, SYSTEM y BOOT.IMG dentro de un mismo archivo (ojo todo esto ha de estar en la raiz del archivo comprimido, no en una carpeta)

zip -r update_prueba1.zip META-INF system boot.img

ojo que seguimos dentro de la raiz del proyecto.

4) Hay que firmar el paquete para que podamos instalarlo en cualquier telefono que acepte paquetes que no tengan una firma oficial.


java -jar signapk.jar testkey.x509.pem testkey.pk8 update_prueba1.zip update_prueba1_signed.zip

Solo hemos añadido BUSYBOX asi como los enlaces simbolicos de este y del toolbox, siempre que se añada algun binario en bin o xbin es recomendable añadirlo en el update-script para que se generen los permisos que nosotros queramos, tambien podemos añadir aplicaciones en e directorio de APP de system, scripts y todo lo que nosotros queramos a nuestro update.

Si hay algun error con el update-script o en alguna parte del tutorial avisadme para que lo arregle.
Responder Con Cita
  #3  
Viejo 27/09/09, 21:15:26
Avatar de deltafranc
deltafranc deltafranc no está en línea
Miembro del foro
Mensajes: 119
 
Fecha de registro: may 2009
Mensajes: 119
Modelo de smartphone: htc magic
Versión de ROM: [ROM/4.2.2] [Feb 17 2013] VJ CM10.1 | Jelly Bean 4.2.2 - v4.7.1
Mencionado: 0 comentarios
Tagged: 0 hilos
que puedo decir....UF!!! no se siquiera si intentarlo...muchisimas gracias Supermatel, no es que sea un experto en el mundillo, aunque tampoco me considero un petardazo, supongo como todo en esta
vida, siempre hay una primera vez!!!
muchas gracias de verdad, en cuanto pueda me lio ha hacer intentos, si me sale bien ya te cuento, si me sale mal, por orgullo propio, seguramente que me calle...jiji muchas gracias otra vez.
Responder Con Cita
  #4  
Viejo 29/09/09, 12:44:44
Avatar de Yorx
Yorx Yorx no está en línea
Miembro del foro
Mensajes: 105
 
Fecha de registro: may 2009
Mensajes: 105
Modelo de smartphone: Galaxy S8
Mencionado: 0 comentarios
Tagged: 0 hilos
Vaya... he llegado aqui buscando como firmar las modificaciones de png's en aplicaciones y rom's y me encuentro con que es mas jodido de lo que pensaba...

Hay alguna manera de poder previsualizar las modificaciones en el pc antes de firmar de nuevo los apk's? Tipo un developer's kit o algo que te permita montar los programas para previsualizarlos antes de meterlos en la magic?

Me mola lo rapido que es esto.. ayer rooteé la magic, le puse la cyanogen 4.0.4 y hoy estoy ya desmontando apk's para modificar los png's a mi antojo..
Responder Con Cita
  #5  
Viejo 29/09/09, 12:56:45
Avatar de superatmel
superatmel
Usuario invitado
Mensajes: n/a
 
Mensajes: n/a
Mencionado: comentarios
Tagged: hilos
Con el emulador de android viene en el sdk es el ddms.bat busca informacion de como arrancarlo la primera vez
Responder Con Cita
  #6  
Viejo 29/09/09, 14:21:23
Avatar de netizen
netizen netizen no está en línea
Miembro del foro
Mensajes: 261
 
Fecha de registro: jul 2009
Localización: Ourense
Mensajes: 261
Mencionado: 0 comentarios
Tagged: 0 hilos
Post

Cita:
Originalmente Escrito por Yorx Ver Mensaje
Vaya... he llegado aqui buscando como firmar las modificaciones de png's en aplicaciones y rom's y me encuentro con que es mas jodido de lo que pensaba...

Hay alguna manera de poder previsualizar las modificaciones en el pc antes de firmar de nuevo los apk's? Tipo un developer's kit o algo que te permita montar los programas para previsualizarlos antes de meterlos en la magic?

Me mola lo rapido que es esto.. ayer rooteé la magic, le puse la cyanogen 4.0.4 y hoy estoy ya desmontando apk's para modificar los png's a mi antojo..
En aplicaciones es mucho más sencillo, veamos si me acuerdo.
0) Tienes que tener instalado el jdk (java).
1) Descomprimes el apk, que no es más que un jar, que no es más que un zip...
2) Borras el directorio META-INF, que basicamente es la firma
3) Generas una llave para firmar, si no la tienes ya. Esto solo lo necesitas hacer una vez, luego puedes reutilizarla (Los siguientes comandos son de mi sistema linux, pero no difieren demasiado en un Windows):
Código:
$ keytool -genkey -alias netizen -keyalg RSA -validity 20000
Enter keystore password:
What is your first and last name?
  [Unknown]:  No One
What is the name of your organizational unit?
  [Unknown]:  none
What is the name of your organization?
  [Unknown]:  not
What is the name of your City or Locality?
  [Unknown]:  Nowhere
What is the name of your State or Province?
  [Unknown]:  Noland
What is the two-letter country code for this unit?
  [Unknown]:  NO
Is CN=No One, OU=none, O=not, L=Nowhere, ST=Noland, C=NO correct?
  [no]:  y

Enter key password for <netizen>
        (RETURN if same as keystore password):
$
4) Haces las modificaciones que quieres al apk en si (como moddificar los recursos res/drawable para adaptarlo a un tema o cambiar un icono)
5) Reempaquetas el programa
6) Lo firmas asi:
Código:
$ jarsigner -verbose -signedjar programa.apk programa.zip netizen
Enter Passphrase for keystore:
adding: META-INF/MANIFEST.MF
adding: META-INF/NETIZEN.SF
adding: META-INF/NETIZEN.RSA
signing: blah blah
signing: ...
$
7) Lista para instalar:
Código:
$ adb install programa.apk
8) A probar (y a veces a repetir)

Espero que te sirva de ayuda.

NOTAS:
netizen es el alias para mi firma, debes ponerle el que quieras, y recordarlo.
Puedes usar un keystore (almacén de llaves), pero si no lo especificas, usa el del sistema y no tendras que recordar otro dato.
Lo he adaptado para mi uso personal de aqui: http://www.anddev.org/signing_your_a...ner-t3069.html
Responder Con Cita
Los siguientes 2 usuarios han agradecido a netizen su comentario:
  #7  
Viejo 29/09/09, 18:58:01
Avatar de Yorx
Yorx Yorx no está en línea
Miembro del foro
Mensajes: 105
 
Fecha de registro: may 2009
Mensajes: 105
Modelo de smartphone: Galaxy S8
Mencionado: 0 comentarios
Tagged: 0 hilos
Disculpa la ignorancia, pero esos comandos son de la consola java? Porque en el cmd no me los coge..
Responder Con Cita
  #8  
Viejo 01/10/09, 03:43:37
Avatar de netizen
netizen netizen no está en línea
Miembro del foro
Mensajes: 261
 
Fecha de registro: jul 2009
Localización: Ourense
Mensajes: 261
Mencionado: 0 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por Yorx Ver Mensaje
Disculpa la ignorancia, pero esos comandos son de la consola java? Porque en el cmd no me los coge..
Además de tener un JDK instalado, tendrás que añadirlo al path o especificar el path para cada comando. Ahí tendrá que ayudarte un usuario de windows.
Responder Con Cita
  #9  
Viejo 20/07/11, 23:30:44
Avatar de Fisher1986
Fisher1986 Fisher1986 no está en línea
Usuario novato en la web
Mensajes: 2
 
Fecha de registro: feb 2011
Mensajes: 2
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Hola chicos, perdonarme en mi eterna ignorancia total. Soy nuevo en este mundillo y estava mirando como abrir .apk de tal manera que pueda modificar archivos de dentro de esa aplicacion. Ahora mismo lo que quiero intentar es traducir una aplicacion .apk de mi htc al español ya que ahora esta en ingles y quiero pasarlo al español a "mi cutre manera"
Alguno me podria decir, para tontos y con un lenguaje para tontos tontos, como lo hago.


Un saludo y muchisimas gracias. ^^

Si no es mucho pedir mandarme un mensaje a [email protected]
Responder Con Cita
  #10  
Viejo 22/07/11, 20:17:48
Avatar de raziel-77
raziel-77 raziel-77 no está en línea
Historiador Android
Mensajes: 12,599
 
Fecha de registro: sep 2009
Localización: Los "Madriles"
Mensajes: 12,599
Modelo de smartphone: LG G2 / SG SII / HTC Magic / Xperia J / Galaxy Ace
Versión de ROM: Todo lo que se pueda flashear
Versión de Radio: Rock FM
Tu operador: Vodafone
Mencionado: 47 comentarios
Tagged: 3 hilos
Busca en las chinchetas que tengo puesto un tutorial para firmar Zip y depaso explico como modificar apk, temas, roms.

Esta orientado para iconos y temas pero si entiendes algo de programación puede valerte de pista para traducciones
Responder Con Cita
  #11  
Viejo 17/11/14, 22:54:43
Avatar de carramba
carramba carramba no está en línea
Usuario muy activo
Mensajes: 1,363
 
Fecha de registro: may 2013
Localización: Toledo
Mensajes: 1,363
Modelo de smartphone: Iphone 15 Plus
Versión de ROM: Stock ROM
Tu operador: Amena
Mencionado: 11 comentarios
Tagged: 0 hilos
una preguntita hay alguna forma de obtener una firma oficial de un fabricante para instalarsela al mismo terminal pero de operadora?? siento mi ignorancia
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Otras marcas y modelos de smartphones de venta en España > HTC > Otros modelos antiguos de HTC > HTC Magic > ROMs y desarrollo HTC Magic


Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 08:35:31 (GMT +1)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007