Thursday, 24 December 2015

Dynamic Status Bar For All Jellybean Devices

Hello guys, we back with a new guide . Just created this thread to share a new status bar tinting (dynamic status bar).

Pre Requisites:-

1. Apktool version 1.5.2 is must.
2. Notepad ++
3. Attachment.
4. SystemUI.apk
5. SecSettings.apk
6. Common sense.jar
7. Brain.dex :p

Procedure:-

PART (I)

1.
Decompile SecSetting.apk

2. Goto res/values/ strings.xml, Add these lines above </resources>

<string name="eboy_basit_dynamic_status_bar_title">Dynamic status bar</string>
<string name="dynamic_status_bar_color_title">Dynamic status bar color</string>
<string name="dynamic_status_bar_color_summary">Automatically update background color of the status bar</string>
<string name="dynamic_status_bar_gradient_title">Gradient</string>
<string name="dynamic_status_bar_gradient_summary">Overlay a gradient on the status bar</string>
<string name="dynamic_status_bar_filter_title">Darkening</string>
<string name="dynamic_status_bar_filter_summary">Overlay a darkening filter on the status bar</string>

3. Add this line in res/xml/display_settings.xml

<PreferenceScreen android:title="@string/eboy_basit_dynamic_status_bar_title" android:fragment="com.android.settings.oplosandev.DSBSettings" />  

Merge Attachment1.zip to the respective folder of your SecSettings.apk

Recompile SecSettings and decompile it again.

4. Goto res/values /public.xml seach for "deuge_dsb_settings" , you'll get its id.

5. Now goto smali/com/android/settings/oplosandev/DSBSettings.smali  search for const v0, 0x7f050064 and replace it  with the id of "deuge_dsb_settings" which you get from public.xml

6. Save it.

7. Recompile it , sign it and push it to system/app folder and set its permission to rw-rr

PART (II)

1. Decompile SystemUI.apk

2. Goto res/values/ids.xml add following codes above </resources>

<item type="id" name="dynamic_status_bar_color">false</item>
<item type="id" name="dynamic_status_bar_filter">false</item>
<item type="id" name="dynamic_status_bar_gradient">false</item>
<item type="id" name="dynamic_status_bar_lockscreen_filter">false</item>

3. Now goto res/layout/tw_status_bar_dual.xml and in its line no. 2 you'll see android:background="@drawable/status_bar_background" replace it by android:background="#00000000"

4. Copy this

<com.fmd.statusbarcolor.color android:id="@id/dynamic_status_bar_color" android:layout_width="fill_parent" android:layout_height="fill_parent">
<View android:id="@id/dynamic_status_bar_filter" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#30000000" android:visibility="gone" />
<View android:id="@id/dynamic_status_bar_gradient" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/dynamic_status_bar_drawable_gradient" android:visibility="gone" />
</com.fmd.statusbarcolor.color>
<View android:id="@id/dynamic_status_bar_lockscreen_filter" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#83000000" android:visibility="gone" />

Below this line:

xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">

Merge Attachment2.zip to their respective folder of SystemUI.apk

Recompile SystemUI.apk and decompile it again

5. Decompile framework-res.apk , goto its res/values/public.xml

Search status_bar_height , you'll get its id like 0x01234567 , now only remove the zero which comes before 1 to make the id like 0x1234567

6. Now goto systemui/smali/com/fmd/color.smali and search for this
const v1, 0x105000c 

Replace 0x105000c with the id of status_bar_height that you got from framework-res.apk .

7. Now open Decompiled SystemUI , goto its res/values/public.xml folder
Search for ids of following keywords

   "dynamic_status_bar_color"

   "dynamic_status_bar_filter"  

   "dynamic_status_bar_gradient"  
"dynamic_status_bar_lockscreen_filter" 

Note them down on your copy.

8. Now open SystemUI/smali/com/fmd/color.smali

Replace 0x7f0c00fe  with the id of
dynamic_status_bar_gradient (2 hits)

Replace 0x7f0c00fd with the id of
dynamic_status_bar_filter (2 hits)

Replace 0x7f0c00fc with the id of
dynamic_status_bar_color (2 hits)

Save it.

Recompile it, sign it and push to /system/app and set permissions to rw-rr and reboot your device.

Note:- To alter dsb settings , goto your settings > display settings > Dynamic Status Bar

Don't forget to hit thanks :D

Credits:-

dugeriss@xda
bamzzz@xda
qoejohn@xda
Daleman
Alex & Rk
Danu Gansilop
WWW.CYBERSTREAM.IN

No comments:

Post a Comment