Tema: [TUTORIAL] Recent Apps New Style
Ver Mensaje Individual
  #1  
Viejo 19/12/12, 18:44:31
Avatar de davidteri
davidteri davidteri no está en línea
Miembro del foro
Mensajes: 289
 
Fecha de registro: dic 2012
Localización: Cinisello Balsamo, Milan
Mensajes: 289
Modelo de smartphone: Galaxy I9001
Versión de ROM: CM 10.1 By Me
Versión de Radio: KPO
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
arg Recent Apps New Style

Hola de nuevo 2 tutorial en este caso como dice el titulo Recent Apps New Style

Tutorial
1.- Descargar este pack http://www.mediafire.com/?aq7g94ol1tdrdc8
2.- Crear una carpeta en el escritorio la podeis llamar como querais
3.- Extraer los archivos del pack.rar dentro de la carpeta que crearon en el escritorio
3.1.- dentro el pack.rar habran dos carpetas las 2 son importantes para hacer este trabajo
4.- dentro la carpeta apktool copiar los apks systemUI.apk e framework-res.apk
5.- Abrir CMD de windows y dentro el cmd ir a la direccion donde se encuentran los apks (en my caso llame la carpeta xx y la direccion que escribire es la siguiente)

[PHP]cd C:\Users\David\Desktop\xx\apktool[/PHP]

6.- ahora montaremos el framewrok-res.apk con este codigo

[PHP]java -jar apktool.jar if framework-res.apk [/PHP]

7.- Despues abriremos el framework-res.apk con este codigo

[PHP]java -jar apktool.jar d framework-res.apk [/PHP]

8.- despues de haber abierto el framework-res dentro la carpeta apktool nos aparecera una carpeta llamada framework-res donde estaran todos los datos del framework-res.apk
9.- Con Notepad++ (creo yo el mas confiable editor de texto) dirigirse a esta ruta framework/res/value/ y abrir dimens.xml y editar las siguientes lineas

[PHP]
<dimen name="thumbnail_height">305.0dip</dimen>
<dimen name="thumbnail_width">192.0dip</dimen>
[/PHP]

10.-10.- Guardar lo editado
11.- Reempaquetar el framework-res.apk con este codigo

[PHP]java -jar apktool.jar b framework-res New_framework-res.apk [/PHP]

12.- Despues de haber reempaquetado el framework-res.apk dentro la carpeta apktool habran 3 apks los 2 anteriores mencionados y uno llamado New_framework-res.apk
3.- Con winrar abrir framework-res.apk y New_framework-res.apk
13.1.- de framework-res.apk borrar la carpeta res y los archivos classes.dex y resources.arsc ( si uno de estos dos ultimos archivos no esta no importa borrad el que este presente)
13.2.- de New_framework-res.apk arrastrar hacia framework-res.apk la carpeta res y los archivos classes.dex y resources.arsc ( si uno de estos dos ultimos archivos no esta no importa arrastren el que este presente)
13.3.- una vez hecha esta modifica cerrar los winrar abiertos
14.- Copiar framework-res.apk modificado a la carpeta zipAlign
14.1.- Abrir el exe zipalign
14.2.- les aparecera una ventana donde deberan escoger Select .apk File
14.3.- Despues deberan escoger el framework-res.apk copiado en la carpeta zipalign
14.4.- despues ejecutaran el bat zipalign
14.5.- cuando el bat termine el proceso presionar cualquier tecla para cerrarlo

15.- dentro la carpeta apktool copiar los apks systemUI.apk e framework-res.apk
16.- Abrir CMD de windows y dentro el cmd ir a la direccion donde se encuentran los apks
17.- ahora montaremos el framewrok-res.apk con este codigo

[PHP]java -jar apktool.jar if framework-res.apk [/PHP]

18.- Despues abriremos el systemUI.apk con este codigo

[PHP]java -jar apktool.jar d SystemUI.apk [/PHP]

19.- despues de haber abierto el systemUI dentro la carpeta apktool nos aparecera una carpeta llamada systemUI donde estaran todos los datos del systemUI.apk
20.- Con Notepad++ (creo yo el mas confiable editor de texto) dirigirse a esta ruta systemUI/smali/com/android/systemui/SystemUIService.smali editar con notepad++ y al final agregar todo esto

[PHP]
.method public openTaskManager(Landroid/view/View;)V
.locals 5
.parameter "view"

.prologue
.line 99
.line 100
:try_start_0
new-instance v1, Landroid/content/Intent;

invoke-direct {v1}, Landroid/content/Intent;-><init>()V

.line 102
.local v1, intent:Landroid/content/Intent;
const-string v2, "android.intent.action.MAIN"

invoke-virtual {v1, v2}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;

.line 105
const/high16 v2, 0x1000

invoke-virtual {v1, v2}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

.line 107
const-string v2, "com.sec.android.app.controlpanel"

const-string v3, "com.sec.android.app.controlpanel.activity.JobMana gerActivity"

invoke-virtual {v1, v2, v3}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

invoke-virtual {p0, v1}, Lcom/android/systemui/SystemUIService;->startActivity(Landroid/content/Intent;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0

.line 109
.line 112
.end local v1 #intent:Landroid/content/Intent;
:goto_0
return-void

.line 115
:catch_0
move-exception v0

.line 117
.local v0, e:Ljava/lang/Exception;
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

goto :goto_0
.end method
[/PHP]

21.- guardar y despues ir a la siguiente ruta systemUI/res/drawable
22.- copiar hd.xml & ic_notify_clear.xml y pegarlo ahi mismo ahora tendreis 2 nuevos xml copia de hd.xml & copia de ic_notify_clear.xml
23.- renombrar copia de hd.xml a button_port.xml editar con notepad++ y borrar todo el contenido y luego pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/button_port_press" />
<item android:drawable="@drawable/button_port_normal" />
</selector>
[/PHP]

24.- renombrar copia de ic_notify_clear.xml a button_land.xml editar con notepad++ y borrar todo el contenido y luego pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/button_land_press" />
<item android:drawable="@drawable/button_land_normal" />
</selector>
[/PHP]

25.- Ir a la siguiente ruta systemUI/res/layout/ encontrar el archivo status_bar_no_recent_apps.xml editar con notepad++ borrar todo el contenido y pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<TextView android:textSize="20.0dip" android:textColor="@android:color/holo_blue_light" android:gravity="center_horizontal" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_no_recent_apps" />
<Button android:gravity="center" android:layout_gravity="top" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Remove All" />
<Button android:gravity="center" android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Task Manager" androidnClick="openTaskManager" />
</FrameLayout>
[/PHP]

26.- Ir a la siguiente ruta systemUI/res/layout-land/ encontrar el siguiente archivo status_bar_recent_item.xml editar con notepad++ borrar todo el contenido y pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:paddingLeft="@dimen/status_bar_recents_item_padding" android:paddingRight="@dimen/status_bar_recents_item_padding" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:layout_gravity="center_vertical" android:id="@id/recent_item" android:paddingTop="@android:dimen/status_bar_height" android:layout_width="wrap_content" android:layout_height="wrap_content">
<FrameLayout android:id="@id/app_thumbnail" android:background="@drawable/recents_thumbnail_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_thumbnail_left_margin" android:layout_marginTop="@dimen/status_bar_recents_thumbnail_top_margin" android:foreground="@drawable/recents_thumbnail_fg" android:layout_alignParentLeft="true" android:layout_alignParentTop="true">
<ImageView android:id="@id/app_thumbnail_image" android:layout_width="125.0dip" android:layout_height="180.0dip" />
</FrameLayout>
<ImageView android:id="@id/app_icon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_icon_left_margin" android:layout_marginTop="@dimen/status_bar_recents_app_icon_top_margin" android:scaleType="centerInside" android:adjustViewBounds="true" android:maxWidth="@dimen/status_bar_recents_app_icon_max_width" android:maxHeight="@dimen/status_bar_recents_app_icon_max_height" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" />
<TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="@dimen/status_bar_recents_text_description_padding" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_thumbnail" android:layout_alignLeft="@id/app_thumbnail" />
<TextView android:textSize="@dimen/status_bar_recents_app_description_text_size" android:ellipsize="marquee" android:id="@id/app_description" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginTop="@dimen/status_bar_recents_text_description_padding" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_label" android:layout_alignLeft="@id/app_thumbnail" />
</RelativeLayout>
</FrameLayout>
[/PHP]

27.- Ir a la siguiente ruta systemUI/res/layout-land/ editar el siguiente archivo status_bar_recent_panel.xml borrar todo y pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:recentItemLayout="@layout/status_bar_recent_item"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<View android:id="@id/recents_transition_background" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentBottom="true">
<ImageView android:id="@id/recents_transition_placeholder_icon" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.android.systemui.recent.RecentsHorizontalScro llView android:layout_gravity="bottom|right|center" androidrientation="horizontal" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_scroll_fading_edge_length" android:clipChildren="false" android:clipToPadding="false" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="@dimen/status_bar_recents_right_glow_margin" android:stackFromBottom="true" android:divider="@null">
<LinearLayout androidrientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="wrap_content" android:layout_height="fill_parent" />
</com.android.systemui.recent.RecentsHorizontalScrol lView>
<Button android:gravity="center" android:layout_gravity="top" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Remove All" />
<ImageView android:layout_gravity="top|center" android:id="@id/recents_clear" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/button_land" />
</FrameLayout>
<include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
<Button android:gravity="center" android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Task Manager" androidnClick="openTaskManager" />
</com.android.systemui.recent.RecentsPanelView>
[/PHP]

28.- Ir a la siguiente ruta systemUI/res/layout-port/ editar el siguiente archivo status_bar_recent_item.xml borrar todo y pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:paddingTop="@dimen/status_bar_recents_item_padding" android:paddingBottom="@dimen/status_bar_recents_item_padding" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:layout_gravity="center_vertical" android:id="@id/recent_item" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true">
<FrameLayout android:id="@id/app_thumbnail" android:background="@drawable/recents_thumbnail_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:foreground="@drawable/recents_thumbnail_fg" android:layout_centerInParent="true">
<ImageView android:id="@id/app_thumbnail_image" android:layout_width="192.0dip" android:layout_height="270.0dip" />
<ImageView android:id="@id/app_icon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_icon_left_margin" android:layout_marginTop="0.0dip" android:scaleType="centerInside" android:adjustViewBounds="true" android:maxWidth="@dimen/status_bar_recents_app_icon_max_width" android:maxHeight="@dimen/status_bar_recents_app_icon_max_height" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" />
</FrameLayout>
<View android:id="@id/recents_callout_line" android:background="@drawable/recents_callout_line" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="1.0dip" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="3.0dip" android:layout_marginRight="3.0dip" android:layout_toLeftOf="@id/app_thumbnail" android:layout_below="@id/app_label" android:layout_alignParentLeft="true" />
<TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:paddingTop="0.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="95.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_thumbnail" android:layout_alignLeft="@id/app_thumbnail" android:layout_alignParentBottom="true" />
<TextView android:textSize="@dimen/status_bar_recents_app_description_text_size" android:ellipsize="marquee" android:id="@id/app_description" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="40.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_label" android:layout_alignLeft="@id/app_thumbnail" android:layout_alignParentBottom="true" />
</RelativeLayout>
</FrameLayout>
[/PHP]

29.- Ir a la siguiente ruta systemUI/res/layout-port/ editar el siguiente archivo status_bar_recent_panel.xml borrar todo y pegar esto

[PHP]
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:recentItemLayout="@layout/status_bar_recent_item"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<View android:id="@id/recents_transition_background" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerVertical="true">
<ImageView android:id="@id/recents_transition_placeholder_icon" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.android.systemui.recent.RecentsHorizontalScro llView android:layout_gravity="bottom|left|center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="0.0dip" android:stackFromBottom="true" android:divider="@null">
<LinearLayout androidrientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" />
</com.android.systemui.recent.RecentsHorizontalScrol lView>
<Button android:gravity="center" android:layout_gravity="top" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Remove All" />
<ImageView android:layout_gravity="top|center" android:id="@id/recents_clear" android:clickable="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/button_port" />
</FrameLayout>
<include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
<Button android:gravity="center" android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Task Manager" androidnClick="openTaskManager" />
</com.android.systemui.recent.RecentsPanelView>
[/PHP]

30.- Ir a la siguiente ruta systemUI/res/values/ y editar bools.xml encontrar la siguiente linea para que quede asi

[PHP]
<bool name="config_recents_thumbnail_image_fits_to_xy">t rue</bool>
[/PHP]

31.- descargar http://www.mediafire.com/?3ow9stnn2cvia15 y agregar estos resources en systemUI/res/drawable-hdpi

32.- Una ves hechos todos estos pasos Reempaquetar el systemUI.apk con este codigo

[PHP]java -jar apktool.jar b SystemUI New_SystemUI.apk[/PHP]

33.- Despues de haber reempaquetado el systemUI.apk dentro la carpeta apktool habran 3 apks los 2 anteriores mencionados y uno llamado New_SystemUI.apk

34.- Con winrar abrir systemUI.apk y New_SystemUI.apk
34.1.- de SystemUI.apk borrar la carpeta res y los archivos classes.dex y resources.arsc
34.2.- de New_SystemUI.apk arrastrar hacia systemUI.apk la carpeta res y los archivos classes.dex y resources.arsc
34.3.- una vez hecha esta modifica cerrar los winrar abiertos
35.- Copiar systemUI.apk modificado a la carpeta zipAlign
35.1.- Abrir el exe zipalign
35.2.- les aparecera una ventana donde deberan escoger Select .apk File
35.3.- Despues deberan escoger el systemUI.apk copiado en la carpeta zipalign
35.4.- despues ejecutaran el bat zipalign
35.5.- cuando el bat termine el proceso presionar cualquier tecla para cerrarlo
36.- Una ves hecho todo esto en la carpeta zipalign apps estaran systemUI.apk y framework-res.apk
37.- descargar esto http://www.mediafire.com/?y5unw554o7bnpy5
38.- copiar systemUI.apk en el zip system/app
39.- copiar framework-res.apk en el zip system/framework
40.- Instalar via recovery reiniciar y disfrutar ;)

Responder Con Cita
Los siguientes 8 usuarios han agradecido a davidteri su comentario:
[ Mostrar/Ocultar listado de agradecimientos ]