PDA

Ver la Versión Completa : [ TUTORIAL ] Crear tu propio tema para cm7 desde windows


arcangel29
20/07/13, 20:47:01
Bueno voy a tratar de explicar como crear un tema propio para cm7 desde windows

Herramientas necesarias:

APK Manager:(porsupuesto saberlo usar ;)
notepad++
Thema base:(se puede obtener desde la misma rom)Cyanbrend.apk si es que todabia exixte en la rom y si no descargar un thema base y que sea libre ok;



Lo primero es descompilarlo
para esto usamos el apk manager como se hace:


una vez instalado no voy a explicar como hay muchos tutos sobre esto.

poner el tema base en la carpeta place-apk-here-for-modding

ejecutar el script.bat y presionar enter para que aparescan las opciones

ahora presionamos 25 y enter ( segun version pero es la opcion Set current project)

ahora opcion 9 y enter (segun version pero es la opcion Descompile apk)

minimizar la ventana ya que luego la vamos a nesecitar
ahora tenemos en la carpeta Project
nuestro thema descompliado ahora lo interesante :ok:

primero modificaremos el AndroidManifest.xml


<?xml version="1.0" encoding="utf-8"?>
<manifest android:hasCode="false" android:versionCode="3" android:versionName="2.01" android:installLocation="internalOnly" package="com.mylook.theme.Arcangel29"
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:pluto="http://www.w3.org/2001/pluto.html">
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="10" />
<uses-feature android:name="com.tmobile.software.themes" />
<application android:label="@string/theme_name" android:icon="@drawable/icon" android:hasCode="false" />
<theme pluto:themeId="Arcangel29" pluto:styleId="@style/Arcangel29" pluto:name="@string/theme_name" pluto:preview="\@drawable/preview" pluto:author="@string/author" pluto:copyright="@string/copyright" pluto:styleName="@string/style_appearance_name" />
</manifest>

ojo "\@drawable/preview" poner tal cual figura con la barra invertida al comienzo

Dado que si no al momento de querer aplicarlo en la rom nos dara error de compilado
de esta forma el la rom una vez compilado nos aparecera una pantalla negra en ves de una imagen es algo que se pierde por hacerlo en windows


com.mylook.theme.Arcangel29 (direcion del pakete normalmente por norma es nuestra pagina web y nombre de apliacion si ustedes obserban com.mylook seria www.mylook.com es para que no haya conflictos con otros paquetes

pluto:themeId="Arcangel29" el id tiene que ser el mismo que el style de abajo

pluto:styleId="@style/Arcangel29" este tiene que ser el que figura en los stylos mas adelante lo veremos


lo siguiente es modificar los String para esto vamos a res/values y nos econtramos con un xml llamado string.xml lo abrimos y nos encontramos con:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Arcangel29</string>
<string name="theme_name">Arcangel29</string>
<string name="style_appearance_name">Arcangel29</string>
<string name="author">EGM_Arcangel29</string>
<string name="copyright">egm_Arcangel29</string>

</resources>

y remplazamos por nuestro nombre de thema con figura arriba.


y ahora nos vamos a res/values/styles.xml

y borramos todo y creamos la siguiente linea

<?xml version="1.0" encoding="UTF-8"?>
<resources>
<style name="Arcangel29" parent="@android:style/Theme" />


</resources>

luego borrar todo lo demas que no modificamos dentro de la carpeta res

dejar:
* la carpeta drawable solamente dejando dentro de esta
la imagen de icono y el de preview( se pueden cambiar a gusto pero tiene que seguir estando)
* y el archivo android.xml dentro de res/xml

el archivo android esta creado de la siguiente manera

<?xml version="1.0" encoding="utf-8"?>
<resource-redirections>
<item name="drawable/original>@drawable/el nuestro</item>
<item name="style/original>@style/el nuestro</item>
<item name="color/original>@color/el nuestro</item>

.
.
.
</resource-redirections>



a modos de ejemplos:


<item name="color/secondary_text_dark">@color/secondary_text_dark</item>

Este tiene que estar sip o sip es el que figura en el id
<item name="style/Theme">@style/Arcangel29</item>

<item name="drawable/btn_default_pressed">@drawable/btn_default_pressed</item>


Ahora crearemos una carpeta dentro de res/ llamada drawable-mdpi
(donde pondremos nuestro iconos nuevos por ejemplo)

lo que vamos a hacer a continuacion es un tema que nos modifique solamente el icono de la radio y el color de las letras del menu de ajustes

para eso buscamos un icono para nuestra radio que sea en formato png y de 48x48

y lo colocamos en esta carpeta y lo llamaremos ic_launcher_fmradio.png

ahora hay que decirle de alguna manera al tema que use ese icono para la radio
esto se hace de esta forma

nos posicionamos dentro de res/xml/
y creamos un nuevo xml llamado:

com_android_fm.xml

lo abrimos y creamos lo siguiente:


<?xml version="1.0" encoding="utf-8"?>
<resource-redirections>
<item name="drawable/ic_launcher_fmradio">@drawable/ic_launcher_fmradio</item>

</resource-redirections>

como vemos el nombre del archivo tiene que ser igual al del paquete remplazando los . por _

y de esta forma pondremos como icono de radio al que nosotros selecionamos.
de esta forma tendrias que seguir modificando los diferentes iconos
a contrinuacion pongo alguno solo algunos nombres de paquetes pero estos los puedes o bien buscar por internet o descompilar las apk y ver que nombre tienen en el Androidmanifest,xml


com_android_contacts.xml
com_android_browser.xml
com_android_email.xml
com_android_mms.xml
com_android_gallery.xml


ahora para modificar el color de alguna fuente

se puede hacer de varias formas

pero un forma correcta seria

dentro de res/values crear un xml llamado color.xml

y agregar los colores que vamos a modificar o usar de esta forma

<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="safe_mode_text">#80ffffff</color>
<color name="color_primary_focus">#ff12bdd0</color>
<color name="color_primary_press">#ff80d6de</color>
<color name="white">#ffffffff</color>
<color name="black">#ff000000</color>
<color name="background">#c0000000</color>
</resources>


aca podemos modificar o agregar colores a nuesto gusto

aclaracion de los colores los 2 primeros caracteres son la opacidad del color

aarrbbgg= alpha+red+blue+green estan en exa
si ponemos aa: 100% transparent=00
50% =7f
0% =ff

ahora nos vamos a res/values/styles.xml

y vamos a sobrescribir el stylo theme que creamos

para esto hacemos lo siguiente:



<?xml version="1.0" encoding="UTF-8"?>
<resources>
<style name="Arcangel29" parent="@android:style/Theme" />
<item name="android:windowBackground">@color/background</item>
<item name="android:windowShowWallpaper">true</item>
<item name="android:textColorPrimary">@color/color_primary_focus</item>

</resources>




bien guardar todo y ahora nos toca el momento de compilar

para esto abrimos de nuevo la ventana del script.bat que teniamos minimizada y
selecionamos la opcion 11 (segun version Compile apk)

si todo sale bien y no tenemos ningun error tendria que preguntarnos
lo siguiente

Please make your decision:11
Building Apk
Is this a system apk (y/n)
Type input:

presionamos Y (enter)
y luego

Please make your decision:11
Building Apk
Is this a system apk (y/n)
Type input: y
Aside from the signatures, would you like to copy
over any additional files that you didn't modify
from the original apk in order to ensure least
# of errors (y/n)
Type input:

Presionamos N (enter)

ahora dentro de la carpeta place-apk-here-for-modding

nos creo un nuevo archivo llamado unsignednombredeltema.apk

ahora nos queda firmarla

se puede firmar de dos formas una para que sea de systema y otra para que no

recomiendo que no para esto en la ventana del apkmanager

selecionamos la opcion 4 (segun version Sign apk (Dont do this if its a system apk))

luego de firmarla la el archivo pasara a llamarse signednombredeltema.apk

y listo la pasamos al telefono la isntalamos y lo selecionamos con la aplicacion themechoser

:ok:

FrogyDoid
20/07/13, 20:52:22
:meparto: me parto.

Eres la bomba.

:gracias:

Saludos X-D

Pdta en tener tiempo hago pruebas jejej:dios:

juliusssss
20/07/13, 21:10:09
Pedazo de detalle te has marcado con el tutorial, gracias compaņero:ok:

aleeexxhh
20/07/13, 21:19:49
Buen tuto arcangel:ok:. Aunque te recomiendo una cosa, para mi es mejor el apktool, el apkmanager da algunos errores (o almenos a mi), como por ejemplos en algunas apk's no me muestra la carpeta valuesX-D

arcangel29
20/07/13, 21:25:03
Buen tuto arcangel. Aunque te recomiendo una cosa, para mi es mejor el apktool, el apkmanager da algunos errores (o almenos a mi), como por ejemplos en algunas apk's no me muestra la carpeta values


no me a pasado nunca pero es a gusto :D

dependera de la version de apkmanager pero tranquilamente se puede hacer con apktool
es solo una opcion pero se supone que quien se ponga a hacer un tema tendria que saver un poco bastante de descompilar y compilar

lo que quise hacer fue dar los pasos de como modificar el manifest y como es que redirecionas los iconos colores y estilos mas que como descompilar no iva a ponerlo como ves al principio creo que puse saber usarlo ejej pero bue ya que estaba para quien no supiera pase los paso pero ademas nunca tuve ese tipo de problemas con el apkmanager raro :S pero gracias por comentarlo por si alguien tiene ese tipo de problemas que usen el apktools ;)

yayo_75
21/07/13, 00:04:29
Buen aporte arcangel :ok:

xhelO
21/07/13, 04:28:40
Gracias por el aporte pero seria mas ilustrativo y ayudaria mas a todos los usuarios si fuera mas ilustrativo =) con imagenes tomalo como constructivo no pesimista =) GRACIAS POR EL APORTE