[GUIDE] How-To Center Clock and SmoothScroll mod on cm10 - Defy General

CENTER CLOCK MOD​
here are the modded files if you don't want to work this by yourself.
Ok guys, this is the way for make center clock on your cm10 build.
First of all, you need the apktool, zipalign and baksmali/smali tools that i'm going to provide you within this tutorial, notepad++ on your pc and root explorer on your phone.
Here is the step-by-step (on windows):
1. Extract apktool to a new folder.
2. Copy framework-res.apk and SystemUI.apk from your phone or from cm10 zip to your apktool folder.
3. Create a backup file of your original SystemUI.apk, name it whatever you want (preferably, backup.apk)
4. open cmd and go to your apktool folder.
5. Set up your framework:
Code:
java -jar apktool.jar if framework-res.apk
6. Now Decompile SystemUI.apk:
Code:
java -jar apktool.jar d SystemUI.apk
7. In explorer, open your apktool folder and look for this path: /SystemUI/res/layout/
8. Open with notepad++ status_bar.xml and copy the following code:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:id="@id/status_bar" android:background="@drawable/status_bar_background" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<ImageView android:id="@id/notification_lights_out" android:paddingLeft="6.0dip" android:paddingBottom="2.0dip" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" />
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="2.0dip" android:paddingRight="2.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/notification_icon_area" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
<com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
</LinearLayout>
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_view" />
<include android:id="@id/signal_cluster_text" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_text_view" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:id="@id/battery_text" android:paddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="-3.0dip" android:singleLine="true" />
<ImageView android:id="@id/battery" android:paddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:paddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:layout_marginRight="4.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
</ImageSwitcher>
<com.android.systemui.statusbar.phone.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:paddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
</com.android.systemui.statusbar.phone.TickerView>
</LinearLayout>
</com.android.systemui.statusbar.phone.PhoneStatusBarView>
9. Save your status_bar.xml
10. Recompile your file
Code:
java -jar apktool.jar b SystemUI New_SystemUI.apk
11. Once it is done building you need to open the backup apk you made at the beginning with Winzip, Winrar, 7zip or your prefered compress tool. Also open New_SystemUI.apk with Winzip, Winrar, 7zip or your prefered compress tool. From inside the New_SystemUI.apk drag resources.arsc and classes.dex to the root of backup.apk and it will replace resources.arsc that is in the apk. You are almost done. From inside New_SystemUI.apk drag the res folder into the backup apk.
12. Copy this modified backup file to Zipalign folder and run the ZipAlign executable. Then run the .bat file. You will find your zipaligned file on the "ZipAlignedApps" folder.
13. Copy the file to your phone.
14. Using Root Explorer, copy your new SystemUI.apk to /system/app, and set 644 permissions ((rw-r--r--) or (tick Read: owner, group, others / Write: owner)
15. Reboot your phone and Enjoy!!!
SMOOTHCROLL MOD​
Here is the step-by-step (on windows):
1. Extract the baksmali/smali tool to a new folder and put the framework.jar in same folder.
2. Run baksmali manager.bat.
3. Select framework.jar by pressing 4 -> 2 in main menu.
4. Press 1 to Baksmali the framework.jar.
5. Make it sure that new 'framework' folder is created and files inside it. (Don't close the baksmali manager window yet!)
6. Open the framework/android/widget/AbsListView.smali with notepad++.
7. Search for ".method private createScrollingCache"
(change red value to green value)
.prologue
const/4 v1, 0x1 0x0
8. Search for ".method private initAbsListView"
(change red value to green value)
.line 808
invoke-virtual {p0, v1v2}, Landroid/widget/AbsListView;->setScrollingCacheEnabled(Z)V
9. Search for ".method public setScrollingCacheEnabled (Z)"
(change red value to green value)
.registers 3
.parameter "enabled"disabled
10. Save the file and close notepad++
11. Come back to baksmali manager window.
12. Press 2 to smali
13. After smali, it will appear a "classes.dex" file on your baksmali/smali folder.
14. Open framework.jar with Winzip, Winrar, 7zip or your prefered compress tool
15. Drag and Drop the new classes.dex into framework.jar and replace the old one.
16. Put modified framework.jar to your phone's sdcard.
17. Copy that file to /system/framework and replace original one.
18. Give proper permissions (rw-r--r--) or (644) or (tick Read: owner, group, others / Write: owner)
19. Restart your phone and enjoy!!!

Nice...Its always goog to guide normal users about how to.

I feel sorry to bother you,
but I did the steps according to your guide, even I did not change anything, but my SystemUI got force close.
Have you got any idea why it does that?
Thanks in advance.

Sajat. said:
I feel sorry to bother you,
but I did the steps according to your guide, even I did not change anything, but my SystemUI get force close.
Have you got any idea why it does that?
Thanks in advance.
Click to expand...
Click to collapse
Ok... try don't sign systemUI.apk...all tell us the result....

espaciosalter20 said:
Ok... try don't sign systemUI.apk...all tell us the result....
Click to expand...
Click to collapse
I tried, now I do not get FC, but I have no statusbar, either.

Sajat. said:
I tried, now I do not get FC, but I have no statusbar, either.
Click to expand...
Click to collapse
Ok, it seems like the code wasn't placed well. Check the code syntax with this
That might solve your dissapering statusbar

espaciosalter20 said:
Ok, it seems like the code wasn't placed well. Check the code syntax with this
That might solve your dissapering statusbar
Click to expand...
Click to collapse
I tired and it said that "No error detected.", but I get FC.
I do not know what can be the problem because I do not modificate anything, but I get FC, it is strange.

Thread re-opened.

Can I try this on Paranoid Android 2.0 ?

abhi9029 said:
Can I try this on Paranoid Android 2.0 ?
Click to expand...
Click to collapse
OP re-opened and guide updated. Now should work well. No FC and no statusbar dissapering.
About PA 2.0, it should work since it's based on Quarx's builds.

Hello,
I have some remarks.
First of all, the point 10 is wrong in this case because we should use this command:
java -jar apktool b SystemUI New_SystemUI.apk
And there is another remark that I cannot put into words so here is the code:
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:gravity="left|center" android:id="@id/battery_text" androidaddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="-3.0dip" android:singleLine="true" />
The interesting one is the "android:gravity="left|center"" causing battery text to orient middle of the status bar.
android:gravity="left|center" is missed from the original code.
Sry for my English.

Thanks, this guide works for me on Quarx' s Defy+ build 04/09
Now i' ve Center Clock, and no FC or disappearing for status bar, thanks :good:

Sajat. said:
Hello,
I have some remarks.
First of all, the point 10 is wrong in this case because we should use this command:
java -jar apktool b SystemUI New_SystemUI.apk
And there is another remark that I cannot put into words so here is the code:
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:gravity="left|center" android:id="@id/battery_text" androidaddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="-3.0dip" android:singleLine="true" />
The interesting one is the "android:gravity="left|center"" causing battery text to orient middle of the status bar.
android:gravity="left|center" is missed from the original code.
Sry for my English.
Click to expand...
Click to collapse
You have right on point 10. It was my mistake when i updated the OP for first time. Now it's ok, i had changed. Good remarks! Thanks!

Java was not found (Smoothscroll)
FIXED:
If anyone runs into the problem of "Java not found" - INSTALL the Java Developer package!
Noob error!
Hi
Referring to the smoothscroll instructions,
1. Extract the baksmali/smali tool to a new folder and put the framework.jar in same folder.
2. Run baksmali manager.bat. - Get an error saying "Java was not found, you will not be able to sign apks or use apktool" (I definitely know I have Java installed.)
3. Select framework.jar by pressing 4 -> 2 in main menu.
4. Press 1 to Baksmali the framework.jar.
5. Make it sure that new 'framework' folder is created and files inside it. (Don't close the baksmali manager window yet!) - assuming this folder hasn't been created due to Java not being found in step 2 above?
Also, copied the Pre-made framework.jar to the system folder..and the phone didnt reboot into CM10.
Appreciate any advice on how to make smooth scroll work

Thank you very much I've wanted a center clock for a while now, and figured I might as well do smooth scrolling while I'm at it. Don't regret it one bit.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
*1000!

edit**** nvm i am a noob!
---------- Post added at 12:47 PM ---------- Previous post was at 11:59 AM ----------
Once again I am a noob. If anyone needs help or a walkthrough I got you! PM me

crashes with FC on SystemUI
Hi,
I've followed your guide for CM10 Nightly 20121001 and 20121011 versions.
I'm trying to get center clock on my status bar for weeks but i get a FC when I reboot the phone and status bar disappears...
hmm.. I tried to understand the code by comparing with the original status_bar.xml from CM10 nightly and what I saw was just re-ordering and changing parameters for the clock...
so i decided to just ctrl+c ctrl+v the code you've provided. however, it gives me FC... (my device is Nexus S)
any suggestion??

hccaus said:
Hi,
I've followed your guide for CM10 Nightly 20121001 and 20121011 versions.
I'm trying to get center clock on my status bar for weeks but i get a FC when I reboot the phone and status bar disappears...
hmm.. I tried to understand the code by comparing with the original status_bar.xml from CM10 nightly and what I saw was just re-ordering and changing parameters for the clock...
so i decided to just ctrl+c ctrl+v the code you've provided. however, it gives me FC... (my device is Nexus S)
any suggestion??
Click to expand...
Click to collapse
That's because this mod is designed for Motorola defy. I suggest you that you use search function on xda to find proper code for your specific status_bar.xml
Enviado desde mi MB526 usando Tapatalk 2

Related

[ICS]Guide to editing Apks -1% battery, On screen buttons.. More to come in future

Ok i will say by now i have become ok at decompiling and recompiling apks....... It took some time to see what i was doing wrong
This guide is for people who want to get mods like 1% battery, on screen ics buttons etc....
I am not a dev so i wouldn't be able to answer all your questions if you have any.....
This is for ics only as GB handles it's resources differently
Btw this isn't necessarily the right way to do it but it the fastest I think and it works for me every time
If you still need help or it still don't work for you PM me and i will try help when am free .....
Credit to _calum_ and memnoc for their awesome guides on decompiling and recompiling ics apks that showed me what i was doing wrong and thanks to xavierjohn22 by making autoapktool makes modding so much faster and easier.
Thanks to [] AL [] for his easy to follow guide which i used for inspiration
Software needed
Download and install 7-zip if you haven't already from here
Download notepad++ from here
It's a great text editor
Download autoapktool from here it's the second post make sure to thank xavierjohn22 for his amazing work -
Unzip it to your local disk you can name the folder whatever you want.
For example - C:\AutoAPKTool2.0.0
Ok Now we can start modding
Guide to editing systemui.apk
1% Battery icons
First search and get your favourite battery icon set... There should be 204 pngs
Now pull your systemUI.apk from system/app and copy it to _INPUT_APK in the autoapktool folder.... You can do this manually with adb commands or use android commander from here - http://androidcommander.com/
Make sure to make a backup just incase this mod doesn't work for you
Now go to the apktoolfolder and run AutoAPKToolMain.bat
Select option 21 and then 3
Make sure it says you're using apktool 1.4.1
Now select option 6 and follow the instrutions
Once it's decompiled navigate back to the _INPUT_APK folder
Open the systemUI folder then res then drawable-hdpi
Now copy all the 204 pngs into this folder
Now go back and copy stat_sys_battery.xml, stat_sys_battery_charge.xml into the drawable folder.
Download files from here
Now go back to AutoAPKToolMain.bat rerun it if you close it
Select option 7 follow the instructions....
Once it's finished recompiling navigate to SystemUI folder dist and you will see your new systemUI.apk...... Important don't push this back to your phone yet.
Now right click on the systemUI.apk.... 7-Zip --> Open archive
Now navigate back to the _INPUT_APK right click on your original systemUI.apk... 7-Zip --> Open archive
Now drag the res folder from the systemUI.apk(the one from the dist folder) into your original systemUI.apk.... click yes to updated then close it.
Now extract the resources.arsc from the systemUI.apk(the one from the dist folder)
Now rename you original systemui.apk (the one in the _INPUT_APK folder) to systemUI.zip
Now right click on the resoruces.arsc 7-Zip --> Add to archive... select your systemUI.zip folder...... Make sure archive format is zip, compression level is store and update mode is add and replace files....
Finally rename the systemUI.zip back to systemUI.apk
Now push systemUI.apk to system/app on your phone and make sure permissions are set to -rw-r-r
If your using android commander select push then select your systemUI.apk from your computer and push it to system/app....
you may get a error don't worry click ok
then rightclick on your systemUI.apk(the one on your phone now) and click properties make sure owner is set to read and write and group and all to read... If it's right it will say -rw-r-r chmod 644
Now reboot and enjoy your work
Awesomeness of ICS
Enabling On screen buttons
Credit to evilisto for his guide
Pull Framework-res.apk from system/framework on your phone using android commander or adb pull if you know how to use that
Copy it to _INPUT_APK folder in the autoapktool folder.
Run AutoAPKToolMain.bat and select option 1
Then select option 6 and follow the instrutions
Once it's decompiled navigate to the _INPUT_APK folder
Open the Framework-res folder then res then values then open bools.xml
Now find the line "config_showNavigationBar" and change it to true and save.
Then find "navigation_bar_height" and change it to 37.0 in dimens.xml
Now go back to AutoAPKToolMain.bat rerun it if you close it
Select option 7 follow the instructions....
Once it's finished recompiling navigate to Framework-res folder dist and you will see your new Framework-res.apk...... Important don't push this back to your phone yet.
Now right click on the Framework-res.apk.... 7-Zip --> Open archive
Now navigate back to the _INPUT_APK right click on your original Framework-res.apk... 7-Zip --> Open archive
Now drag the res folder from the Framework-res.apk(the one from the dist folder) into your original Framework-res.apk.... click yes to updated then close it.
Now extract the resources.arsc from the Framework-res.apk(the one from the dist folder)
Now rename your original Framework-res.apk (the one in the _INPUT_APK folder) to Framework-res.zip
Now right click on the resoruces.arsc 7-Zip --> Add to archive... select your Framework-res.zip folder...... Make sure archive format is zip, compression level is store and update mode is add and replace files....
Finally rename the Framework-res.zip back to Framework-res.apk
Now push Framework-res.apk to system/app on your phone and make sure permissions are set to -rw-r-r
If your using android commander select push then select your Framework-res.apk from your computer and push it to system/framework on your phone....
you may get a error don't worry click ok
then rightclick on your Framework-res.apk(the one on your phone now) and click properties make sure owner is set to read and write and group and all to read... If it's right it will say -rw-r-r chmod 644
Now reboot and enjoy your work
Mix and match???
Getting custom on screen buttons...
By now you should know what your doing so this will be short
Credit to atticus182 for his guide and amazing collection.... Thank him and download from http://forum.xda-developers.com/showthread.php?t=1413582
For This one you need systemUI.apk so decompile it and go to res folder then drawable-hdpi
Now copy the images you want from your favourite collection or you can mix them P.S you don't need the search since it's not enabled on our rom
Make sure for each one you choose it should be two pngs....
For example to change the home icon you need ic_sysbar_back.png and ic_sysbar_back_land.png....
Now recompile and push to your phone
Reboot and enjoy
Here is an example of what I have done
http://dl.xda-developers.com/attachdl/fdb1e0e2ef2659f9cd1577378f6088b5/4f52f12d/9/3/0/5/4/5/Screenshot_2012-03-02-19-42-08.jpg
http://dl.xda-developers.com/attachdl/5047d9e539ae988f59e8c546557ae4aa/4f52f132/9/3/0/5/4/6/Screenshot_2012-03-04-04-29-58.jpg
http://dl.xda-developers.com/attachdl/cc4c1d633e4d569c068b41f6d02d05d5/4f52f136/9/3/0/5/4/7/Screenshot_2012-03-04-04-30-17.jpg
And one for me
Sent from my MB525 using XDA App
[ACS][MOD][ICS]Status Bar Animation/Transparent/Themed Mods/ by shane637
Sidz4u said:
And one for me
Sent from my MB525 using XDA App
Click to expand...
Click to collapse
Looool......
Found a new awesome mod tutorial tomorrow
Here is a preview-
http://www.youtube.com/watch?v=PaW-jzbMs6o&feature=player_embedded
http://forum.xda-developers.com/showthread.php?t=1406729
CM9 Reloaded Statusbar Mod - Toggles page, centered clock and more by rob43
http://forum.xda-developers.com/showthread.php?t=1531222
Another one confirmed to be working on our defy by nogoodusername, Gazm4n and me.... If you have any mods you will have to reapply them
Change ICS lockscreen animation to different styles by evilisto
Credit and Thanks to evilisto for his awesome work and guide. Thank him here
evilisto said:
2) much easier way
1) decompile you rom's framework.jar using apktool.
2) go to framework.jar/smali/com/android/internal/widget/multiwaveview
3) download this file.
- for stock, AOSP or CM9 based rom : http://www.mediafire.com/?1wkbjt1bxsqsjnr
- for AOKP based rom : http://www.mediafire.com/?zb4mm1aaas1c8oc
this zip contain MultiWaveView.smali. replace original file with this one.
4) recompile.
5) done
-----------------------------------------------------------------------------
time to theme
: you have to replace lockscreen related PNGs in framework-res.apk.
framework-res.apk/res/drawable-hdpi or mdpi or xhdpi...
- ic_lockscreen_chevron_down.png
- ic_lockscreen_chevron_left.png
- ic_lockscreen_chevron_right.png (important)
- ic_lockscreen_chevron_up.png
and if you want, change lockscreen handle too.
- ic_lockscreen_handle_normal.png
- ic_lockscreen_handle_pressed.png
all my works are here (for hdpi).
1) default honeycomb ripple : http://www.mediafire.com/?7ktduz5dhsmzq6p
2) chrome logo :
download : http://www.mediafire.com/?osjng768zznfeh6
3) android logo
download : http://www.mediafire.com/?56sjs541bij3ygu
4) AT Field style (octagonal ripple)
download : http://www.mediafire.com/?t8lrdkr23nex7pc
5) Google Play logo
download : http://www.mediafire.com/?1vbc3ctdc7p94j4
Click to expand...
Click to collapse
Problem with recompiling....
Hey mate...a very nice tutorial...mm i went in a bit of problem.
i successfully pulled framework-res.apk and decompiled it. I edited the xml files too usin notepad++ then the problem came....while i recompile the folder, a notepad windows opens up showing errors.....any ideas how to fix that...?
Change ICS App Switcher to Windows Phone 7 Style
Full credits and thanks to evilisto for awesomes mods.....
Thank him here
evilisto said:
WP7(Mango?) app switcher is like this :
and i made similar thing by modifying ics app switcher layout.
preview :
flashable mod is originally posted in nexus s theme forum.
[MOD] Change ICS App Switcher to Windows Phone 7 Style
this mod is related to framework-res.apk and SystemUI.apk so making universal version for any devices is difficult. so i write this simple guide for other rom / device users.
-----------------------------------------------------------------------------
* framework-res.apk
- /res/values/dimens.xml : change thumbnail size to..
Code:
<dimen name="thumbnail_height">305.0dip</dimen>
<dimen name="thumbnail_width">192.0dip</dimen>
these values are wvga devices only. if you have mdpi or xhdpi device, you have to adjust these values suitable to your screen size.
* SystemUI.apk
- /res/values/bools.xml
Code:
<bool name="config_recents_thumbnail_image_fits_to_xy">true</bool>
- /res/values/drawables.xml
Code:
<item type="drawable" name="status_bar_recents_background_solid">#ff33b1e1</item>
- /res/values/dimens.xml
Code:
<dimen name="status_bar_recents_thumbnail_width">192.0dip</dimen>
<dimen name="status_bar_recents_thumbnail_height">305.0dip</dimen>
- /res/layout-port/status_bar_recent_item.xml
Code:
<?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" 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="305.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>
<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_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="100.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_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>
- /res/layout-port/status_bar_recent_panel.xml
Code:
<?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"
xmlns:android="http://schemas.android.com/apk/res/android">
<FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background_solid" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerVertical="true">
<com.android.systemui.recent.RecentsHorizontalScrollView 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 android:orientation="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.RecentsHorizontalScrollView>
</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" />
</com.android.systemui.recent.RecentsPanelView>
and you'd better to edit landscape layout too..
- /res/layout-land/status_bar_recent_item.xml
Code:
<?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="115.0dip" android:layout_height="183.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_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_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>
- /res/layout-land/status_bar_recent_panel.xml
Code:
<?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"
xmlns:android="http://schemas.android.com/apk/res/android">
<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">
<com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|left|center" android:orientation="horizontal" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" 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 android:orientation="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.RecentsHorizontalScrollView>
</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" />
</com.android.systemui.recent.RecentsPanelView>
-----------------------------------------------------------------------------
Thanks to brucekey in rootzwiki
(this mod is based on his WEBAOKP mod.)
-----------------------------------------------------------------------------
Click to expand...
Click to collapse

Remove clock from Satus Bar

I would like the status bar the same as on the Lock screen
I think I found the line to delete in order to get rid of the clock on the status bar, in file SystemUI\res\layout\status_bar.xml, I decode it ok with Android Suite, but encoding gives an error ???
Brut directory PathNotExist Apktool.yml
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
melorib said:
I would like the status bar the same as on the Lock screen
I think I found the line to delete in order to get rid of the clock on the status bar, in file SystemUI\res\layout\status_bar.xml, I decode it ok with Android Suite, but encoding gives an error ???
Brut directory PathNotExist Apktool.yml
Click to expand...
Click to collapse
It is simple you are using this code:
Code:
apktool b SystemUI.apk
but you have to specify the FOLDER name, not the apk name. so it should be
Code:
apktool b SystemUI
LegendK95 said:
It is simple you are using this code:
Code:
apktool b SystemUI.apk
but you have to specify the FOLDER name, not the apk name. so it should be
Code:
apktool b SystemUI
Click to expand...
Click to collapse
Thanks
I think the problem is more complicated, I tried with other SystemUI.apk and it encoded, the one from my ROM doesnt, it must have some errors
HOW TO CENTER CLOCK
-decompile your SystemUI.apk
-navigate to your decompiled folder and go to res>layout>status_bar.xml
-look for this line:
Code:
<com.android.systemui.statusbar.policy.Clock
-delete the stock clock line, delete the entire line
-next go to the top of your status_bar.xml and place your cursor at the end of this line:
Code:
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
-press "enter" to create an empty line
-place your cursor at the beginning of that empty line and paste this line of code:
Code:
<LinearLayout android:gravity="center" androidrientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="center" androidaddingTop="3.0px" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:layout_weight="1.0" />
</LinearLayout>
-make sure everything lines up (see my xml below)
-lastly, find this line:
Code:
<LinearLayout androidrientation="horizontal" android:id="@id/ticker"
-right after "@id/ticker" add this drawable:
Code:
android:background="@drawable/status_bar_bg_tile"
That's it for the Center Clock. Recompile and if you used apktool sign your new SystemUI.apk using apkmanager (option 16)
Here is an example of how your status_bar.xml should look like
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView androidrientation="vertical" android:background="@drawable/status_bar_background" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<LinearLayout android:gravity="center" androidrientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="center" androidaddingTop="3.0px" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:layout_weight="1.0" />
</LinearLayout>
<LinearLayout androidrientation="horizontal" android:id="@id/icons" androidaddingLeft="6.0dip" androidaddingRight="6.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout androidrientation="horizontal" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
<com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" androidrientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
</LinearLayout>
<LinearLayout android:gravity="center_vertical" androidrientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<LinearLayout android:gravity="center" androidrientation="horizontal" android:id="@id/signal_battery_cluster" androidaddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_view" />
<ImageView android:id="@id/battery" androidaddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
<LinearLayout androidrientation="horizontal" android:id="@id/ticker" android:background="@drawable/status_bar_bg_tile" androidaddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:layout_marginRight="4.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
</ImageSwitcher>
<com.android.systemui.statusbar.phone.TickerView android:id="@id/tickerText" androidaddingTop="2.0dip" androidaddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" androi
Click to expand...
Click to collapse
I did all this, replaced SystemUI\res\Layout\Status_bar but nothing changed
To remove clock from status bar do this:
Decompile SystemUI.apk
edit smali\com\android\systemui\statusbar\phone\PhoneStatusBar.smali
Search for: .method public showClock(Z)V
replace: const/4 v0, 0x0
with: const v0, 0x8
recompile SystemUI
note: the 0x8 value hides the clock
gcrutchr said:
To remove clock from status bar do this:
Decompile SystemUI.apk
edit smali\com\android\systemui\statusbar\phone\PhoneStatusBar.smali
Search for: .method public showClock(Z)V
replace: const/4 v0, 0x0
with: const v0, 0x8
recompile SystemUI
note: the 0x8 value hides the clock
Click to expand...
Click to collapse
Thank you SIR, unfortunately Apk_Multi_ICS when I re-compile, after doing the change, put it back as it was
melorib said:
Thank you SIR, unfortunately Apk_Multi_ICS when I re-compile, after doing the change, put it back as it was
Click to expand...
Click to collapse
here is the apktool I use.
gcrutchr said:
here is the apktool I use.
Click to expand...
Click to collapse
Thanks, I get this errors and nothing on decompiled smali folder
melorib said:
Thanks, I get this errors and nothing on decompiled smali folder
Click to expand...
Click to collapse
Have u installed the framework of ur rom first?
| Google+ |
AashayS said:
Have u installed the framework of ur rom first?
| Google+ |
Click to expand...
Click to collapse
I tried as per instructions I found on the net, but as you can see it didnt work, please show me the commands to install framework, decompile SystemUI.apk, and recompile it, thanks,
melorib said:
I tried as per instructions I found on the net, but as you can see it didnt work, please show me the commands to install framework, decompile SystemUI.apk, and recompile it, thanks,
Click to expand...
Click to collapse
If u are using apktool ,then to install framework, type in cmd,
Apktool if <path to framework-res.apk>
To decompile apk
Apktool d <path to apk> <path where decompiled apk should be>
Recompile
Apktool b <path to decompiled apk>
| Google+ |
melorib said:
I tried as per instructions I found on the net, but as you can see it didnt work, please show me the commands to install framework, decompile SystemUI.apk, and recompile it, thanks,
Click to expand...
Click to collapse
To decompile the command is:
apktoollics d SystemUI.apk
To compile the command is:
apktoolics b SystemUI
your apkfile will be in SystemUI\dist, but you need to add META_INF folder and AndroidManifest.xml from your original SystemUI.apk into the new SystemUI.apk.
EDIT: if you need to install framework-res, the command is:
java -jar apktool.jar if framework-res.apk
gcrutchr said:
To decompile the command is:
apktoollics d SystemUI.apk
To compile the command is:
apktoolics b SystemUI
your apkfile will be in SystemUI\dist, but you need to add META_INF folder and AndroidManifest.xml from your original SystemUI.apk into the new SystemUI.apk.
EDIT: if you need to install framework-res, the command is:
java -jar apktool.jar if framework-res.apk
Click to expand...
Click to collapse
Same error
melorib said:
Same error
Click to expand...
Click to collapse
Which ROM is this?
Edit: The bad magic value is because you are not using the correct apktool.jar for the SystemUI.apk you are trying to decompile.
Since u are only needing to edit out smali just grab classes.dex from unzipped (not decompiled) apk and then use baksmali.jar to decompile it. Edit smali lines then recompile with smali.jar
After then place new classes.dex in system ui rezip apk and u should be good
gcrutchr said:
Which ROM is this?
Edit: The bad magic value is because you are not using the correct apktool.jar for the SystemUI.apk you are trying to decompile.
Click to expand...
Click to collapse
I am using Dynamic 1.4 LP9
melorib said:
I am using Dynamic 1.4 LP9
Click to expand...
Click to collapse
Post your SystemUI.apk and I will look at it.
gcrutchr said:
Post your SystemUI.apk and I will look at it.
Click to expand...
Click to collapse
Thanks,
http://melorib.com/data/SystemUI.apk
gcrutchr said:
Post your SystemUI.apk and I will look at it.
Click to expand...
Click to collapse
I also tried to remove the Clock line from RES/Layout/Statusbar, but cannot compile back with the mod
melorib said:
I also tried to remove the Clock line from RES/Layout/Statusbar, but cannot compile back with the mod
Click to expand...
Click to collapse
Ok...try this.

[GUIDE] Learn to edit APKs | *Very* noob-friendly | Ex. mod: remove brightness slider

Hi. I'm pretty fresh to Android, but I've already fallen in love with it. After getting the courage to root, I've found my phone as customizable as I want. If you want to move past requesting developers to edit this or that for you or just want to learn more about editing neat system files, then this guide is for you. I will be providing a thorough rationale for each step; you don't need to read the rationale to make this work, but kittens will die if you don't. And, if you understand how it all works, you'll be able to mod/edit any APK you ever find! Made possible with help from:
David Dee for inspiring me to mod my phone
grgsiocl for the actual mod
Diamondback for his critical and wonderful integrated developing environment, Virtuous Ten Studio (aka VTS)...thus NO APKTOOL COMMAND LINE REQUIRED. YES. BE HAPPY.
efrant for the helpful ADB clarifications
Chainfire for his wonderful and free adbd insecure app
David Dee, Phoneguy589, psenseny: the three people who liked my post when I said I would write a guide about this.
So, want to make this,
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
look like this:
This mod is for US-based Galaxy S3's running 4.1.1. I'm concurrently running this with David Dee's 23 toggle mod, so no problems there. It might work in other phones, too, but I haven't tested them. Of course, everything you do is your own responsibility. I take no ownership of your issues, but I will help if I can!
The overview: If you know how to decompile, save the signature, edit XMLs, and recompile, just follow the instructions in bold red. For the rest of us, we'll be using the user-friendly, fully GUI Virtuous Ten Studio. First, we'll SystemUI.apk. Decompile. Edit XML. Recompile. Push modded SystemUI.apk and finally restart.
Making a Nandroid, setting up adbd insecure for those on stock kernel, and preparing VTS for use!
READ THIS WHOLE TUTORIAL ONCE AND MAKE SURE YOU UNDERSTAND IT BEFORE ACTUALLY STARTING IT. Ask me before you do something you don't know!
Root required. Why: we need to edit files in the /system partition of Android. Only root users will be able to do that.
Make a Nandroid backup right now (either using the wonderful Orange Backup app or reboot to recovery and make it).
I wasn't joking.
Seriously, make a Nandroid backup right now.
If you have the stock kernel (or any kernel that is "secure" [i.e. ro.secure=1 in your build.prop]), then install adbd insecure onto your phone. Why: expediency (i.e. fewer commands to type). VTS will be using ADB, the Android Debugging Bridge, to copy and paste files from our computer to our phone. If you are rooted + stock kernel, ADB runs in a "secure" mode that will make us jump through some hoops to copy files. Your phone has a build.prop file, located in /system. It has a line in there called ro.secure; if it is ro.secure=1, adb will run in this annoying secure mode (EVEN IF YOU ARE ROOTED). Adbd insecure will ignore that ro.secure=1 setting and force adbd to run insecure (get it? adbd insecure is the name of the app? Chainfire, you so clever!)
Now, install Virtuous Ten Studios (VTS) Why: We'll be using VTS exclusively to decompile, edit the XML, and recompile. You will NOT be writing a single line of code into a command prompt or anything. Thank you, modern software.
Read the tutorials gratefully written by Diamondback, et al. They're on the website linked in the link in the step above.
You didn't read them, did you? Jerk. lol, jk. But, seriously, read them. It will make VTS seem not so foreign and scary!
Enable Settings -> USB debugging on your phone.
Run the adbd insecure app on your phone. Check "Enable insecure adbd."
Plug your phone into your computer.
Open VTS. Then "File" -> "Open VTS Settings".
Go to "External Tools" -> "ApkTool". Click "Add single framework". Why: long answer here, haha. APKs are zip files, but if you simply unzipped them and opened an XML file, you'd get garbage. Unreadable junk! That's because the APK has been COMPILED. It was a collection of folders, then it was compiled (which, IMO, just means it was changed into Android-readable-code). We need Windows-readable-code. So, we must decompile the APK. Then we shall see Windows-readable-code organized into neat little folders. But, to change from Android-readable-code to Windows-readable-code, we need some extra files. Namely, your framework-res.apk. It contains some instructions or random junk (no idea what exactly) that will allow us to decompile SystemUI.apk.
Give your framework a tag. It's just a name that you can remember. Framework-res.apks are specific to each phone and each ROM, so if you did LOTS of theming, the tag would be useful in recalling which framework-res.apk this is!
Click OK. Then, click the down arrow next to Remote File. Open the Framework folder and highlight "framework-res.apk." Then click "Import." It'll take 15 or so seconds.
Click OK after the framework installs (you'll see it appear in your window!).
Modifying SystemUI.apk to remove the brightness bar
Let's actually do the mod now, eh? Click File in VTS and click "New Project." Why: Solutions are like "folders" and Projects are like "files" in VTS. It's just to keep you organized. We're going to be editing ONE file, so we'll make ONE solution and inside that solution will be ONE project.
Make sure Apk-Project is highlighted on the "Project" tab. Give the Project and Solution a name; doesn't matter what.
Click Apk-Tool on the left. Inside the framework tag box, type in the name you gave your framework. Or select it from the drop-down menu; whatever works for you.
Click Smali on the left. Choose API Level "4.1 Jelly Bean" Why: we aren't editing Smali (a different kind of code, besides XML), but it can't hurt, right?
Go to Build on the left. Make sure "Sign output file via the following method" is checked and Select "Keep old signature (not recommended)". It's not recommended because sometimes it can cause problems; but, it is the best option for system APKs (not user apks, like Pandora.apk). Why: every app has a signature verifying that it is made by this developer (and not some hacker). Think of a signature as a trip-wire for zipping and compiling APKs. If we do either of those, the signature will go crazy; if you have a "crazy"/tripped signature, your phone will be stuck on the boot logo. So, APKs are basically zip files; the signature is inside both the META-INF folder and AndroidManifest.xml file. Again, these files are tripped/changed if you unzip or re-zip or decompile or re-compile your APK (very sensitive!); you don't even have to open them and they will get changed! Thus, VTS, after we recompile, will insert the original META-INF folder and AndroidManifest.xml file (that it backed up when it pulled the APK) back into the now-modified APK.
Go to Import on the left. Click the "..." button on the right. Click the down arrow next to Remote file. Open the System folder.
BEHOLD the wonderful list of all the system apps installed on your phone. Scrooooooollllll down to SystemUI. apk. Select it and click import.
Click "OK" to begin decompiling SystemUI.apk
Wait about 20 seconds. You should be greeted with a set of folders called assets, res, and smali, as well as AndroidManifest.XML, apktook.yml, and buildevents.
Open res -> layout -> tw_status_bar_expanded.xml by DOUBLE-CLICKING it. WARNING: there are about 50 different folders that are called layout-blah and 50 different XML files that have "tw" and "status_bar" there. Make sure you open the right file.
You should get some nice XML code at the bottom. Add exactly this:
Code:
android:visibility="gone"
here (it's colored in red; scroll right to see it!):
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:id="@id/notification_panel" android:background="@drawable/back" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/close_handle_underlap">
<include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
<com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/notification_panel_header_height" />
<HorizontalScrollView android:id="@id/quicksetting_scroller" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
<com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
</HorizontalScrollView>
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/notification_panel_quicksettingbtn_height" android:overScrollMode="ifContentScrolls">
<LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" [B][COLOR="Red"]android:visibility="gone"[/COLOR][/B] android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip">
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="1.0dip">
<ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
<FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
</FrameLayout>
</LinearLayout>
<View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
<TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
</RelativeLayout>
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
</LinearLayout>
</ScrollView>
</FrameLayout>
<com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:layout_marginBottom="10.0dip" />
</RelativeLayout>
</com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>
Then, DO NOT TOUCH ANYTHING ELSE in the XML file. Unless you're feeling adventurous?
Click "Push All" on the top. If you did it right, it shall ask you "Do you want to save changes?"
Click yes. Wait 2 minutes while it re-compiles and pushes the APK to /system/app.
If all went well, your screen will flicker and you'll get the original wallpaper back. No worries. REBOOT YOUR PHONE (this will reload SystemUI.apk, disable adbd insecure, and put /system back in a read-only state: all good things!) and ENJOY NO BRIGHTNESS BAR.
Questions?
Re: [GUIDE] *very* noob-friendly - learn to edit APKs - ex.: remove the brightness sl
I actually just posted a question in the TW themeing sticky thread concerning the brightness slider removal. Can you take a look and see if you might be able to help... Don't want to double post.
Thank You.
Sent from my SGS III
Re: [GUIDE] *very* noob-friendly - learn to edit APKs - ex.: remove the brightness sl
Hi! I see! OK. I simply added the android:visibility="gone" instead of changing the dip to 0.0.
To keep a placeholder, add my code just one line below the one I've posted. I don't exactly know how to do it your way.
This will give you a buffer as tall as the original brightness slider, like so:
However, that might be too much of a buffer. Then, I would experiment with some of those dip numbers concerning height and one of them might shrink it for you!
Nice tuto!
Then, DO NOT TOUCH ANYTHING ELSE in the XML file. Unless you're feeling adventurous?
Click to expand...
Click to collapse
Just for information, the layout file can be eaisly edited with Eclipse or Intellij Idea (both are free, Intellij is better BUT not opensource).
Using these tools is interesting as it can generate a view on your computer of the result.
So it is very easy to be adventurous
Regards
---------- Post added at 04:40 PM ---------- Previous post was at 04:33 PM ----------
ikjadoon said:
Hi! I see! OK. I simply added the android:visibility="gone" instead of changing the dip to 0.0.
To keep a placeholder, add my code just one line below the one I've posted. I don't exactly know how to do it your way.
This will give you a buffer as tall as the original brightness slider, like so:
However, that might be too much of a buffer. Then, I would experiment with some of those dip numbers concerning height and one of them might shrink it for you!
Click to expand...
Click to collapse
for the effect of Gone:
http://developer.android.com/reference/android/view/View.html#attr_android:visibility
Thanks. It's nothing big, but I was excited when I finally got it all to work. Oooh, that would be very handy! Hrmm.....I shall contemplate learning those programs---it's like opening Pandora's box, so many things to do!
I see; thank you for linking that wonderful website (no idea it existed!). So, maybe then, swiftks, keep the edit in the same line, but change it to android:visibility="invisible" ?
~Ibrahim~
Thanks guys, got it perfect to my liking. :laugh: :good:
Here's my tw_status_bar_expanded.xml with the changes in RED.
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:id="@id/notification_panel" android:background="@drawable/notification_panel_bg" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/close_handle_underlap">
<include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
<com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/notification_panel_header_height" />
<HorizontalScrollView android:id="@id/quicksetting_scroller" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
<com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
</HorizontalScrollView>
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/notification_panel_quicksettingbtn_height" android:overScrollMode="ifContentScrolls">
<LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" [COLOR="red"]android:visibility="invisible"[/COLOR] android:layout_width="fill_parent" android:layout_height="[COLOR="red"]26.0dip[/COLOR]">
<LinearLayout android:orientation="horizontal" [COLOR="red"]android:visibility="invisible"[/COLOR] android:layout_width="fill_parent" android:layout_height="[COLOR="red"]25.0dip[/COLOR]">
<ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
<FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
</FrameLayout>
</LinearLayout>
<View android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="1.0dip" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff000000" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
<TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
</RelativeLayout>
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
</LinearLayout>
</ScrollView>
</FrameLayout>
<com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_marginBottom="0.0dip" />
</RelativeLayout>
</com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>
just a tip if you are not on a windows machine because windows blows
use apktool... much much moree effective... in my opinion and to edit smali or xmls i use Sublime text editor
also i belive in this same xml u can remove carrier logo and some more fun stuff ;D as well as mess with color.
Good tut!
I was poking around with vts for systemui then i found your tut. Covered the basic startup. Work on my note 2 and s3.
Just to let you know, vts was updated to keep old signature together with the "AndroidManifest.xml" i just used the keep old signature feature and push it to my phone. Real easy no more typing to push. Thankyou very much!!! Much better than using apktool.
Sorry for bumping old thread but i cant resist haha!
winmobby said:
I was poking around with vts for systemui then i found your tut. Covered the basic startup. Work on my note 2 and s3.
Just to let you know, vts was updated to keep old signature together with the "AndroidManifest.xml" i just used the keep old signature feature and push it to my phone. Real easy no more typing to push. Thankyou very much!!! Much better than using apktool.
Sorry for bumping old thread but i cant resist haha!
Click to expand...
Click to collapse
Oh, it was! I saw that and totally forgot to update the guide. Will do!
Wow, it is so much easier now! Thanks for the heads up.
How to change Carrier ID to Carrier Logo
ikjadoon said:
Hi. I'm pretty fresh to Android, but I've already fallen in love with it. After getting the courage to root, I've found my phone as customizable as I want. If you want to move past requesting developers to edit this or that for you or just want to learn more about editing neat system files, then this guide is for you. I will be providing a thorough rationale for each step; you don't need to read the rationale to make this work, but kittens will die if you don't. And, if you understand how it all works, you'll be able to mod/edit any APK you ever find! Made possible with help from:
David Dee for inspiring me to mod my phone
grgsiocl for the actual mod
Diamondback for his critical and wonderful integrated developing environment, Virtuous Ten Studio (aka VTS)...thus NO APKTOOL COMMAND LINE REQUIRED. YES. BE HAPPY.
efrant for the helpful ADB clarifications
Chainfire for his wonderful and free adbd insecure app
David Dee, Phoneguy589, psenseny: the three people who liked my post when I said I would write a guide about this.
So, want to make this,
look like this:
This mod is for US-based Galaxy S3's running 4.1.1. I'm concurrently running this with David Dee's 23 toggle mod, so no problems there. It might work in other phones, too, but I haven't tested them. Of course, everything you do is your own responsibility. I take no ownership of your issues, but I will help if I can!
The overview: If you know how to decompile, save the signature, edit XMLs, and recompile, just follow the instructions in bold red. For the rest of us, we'll be using the user-friendly, fully GUI Virtuous Ten Studio. First, we'll SystemUI.apk. Decompile. Edit XML. Recompile. Push modded SystemUI.apk and finally restart.
Making a Nandroid, setting up adbd insecure for those on stock kernel, and preparing VTS for use!
READ THIS WHOLE TUTORIAL ONCE AND MAKE SURE YOU UNDERSTAND IT BEFORE ACTUALLY STARTING IT. Ask me before you do something you don't know!
Root required. Why: we need to edit files in the /system partition of Android. Only root users will be able to do that.
Make a Nandroid backup right now (either using the wonderful Orange Backup app or reboot to recovery and make it).
I wasn't joking.
Seriously, make a Nandroid backup right now.
If you have the stock kernel (or any kernel that is "secure" [i.e. ro.secure=1 in your build.prop]), then install adbd insecure onto your phone. Why: expediency (i.e. fewer commands to type). VTS will be using ADB, the Android Debugging Bridge, to copy and paste files from our computer to our phone. If you are rooted + stock kernel, ADB runs in a "secure" mode that will make us jump through some hoops to copy files. Your phone has a build.prop file, located in /system. It has a line in there called ro.secure; if it is ro.secure=1, adb will run in this annoying secure mode (EVEN IF YOU ARE ROOTED). Adbd insecure will ignore that ro.secure=1 setting and force adbd to run insecure (get it? adbd insecure is the name of the app? Chainfire, you so clever!)
Now, install Virtuous Ten Studios (VTS) Why: We'll be using VTS exclusively to decompile, edit the XML, and recompile. You will NOT be writing a single line of code into a command prompt or anything. Thank you, modern software.
Read the tutorials gratefully written by Diamondback, et al. They're on the website linked in the link in the step above.
You didn't read them, did you? Jerk. lol, jk. But, seriously, read them. It will make VTS seem not so foreign and scary!
Enable Settings -> USB debugging on your phone.
Run the adbd insecure app on your phone. Check "Enable insecure adbd."
Plug your phone into your computer.
Open VTS. Then "File" -> "Open VTS Settings".
Go to "External Tools" -> "ApkTool". Click "Add single framework". Why: long answer here, haha. APKs are zip files, but if you simply unzipped them and opened an XML file, you'd get garbage. Unreadable junk! That's because the APK has been COMPILED. It was a collection of folders, then it was compiled (which, IMO, just means it was changed into Android-readable-code). We need Windows-readable-code. So, we must decompile the APK. Then we shall see Windows-readable-code organized into neat little folders. But, to change from Android-readable-code to Windows-readable-code, we need some extra files. Namely, your framework-res.apk. It contains some instructions or random junk (no idea what exactly) that will allow us to decompile SystemUI.apk.
Give your framework a tag. It's just a name that you can remember. Framework-res.apks are specific to each phone and each ROM, so if you did LOTS of theming, the tag would be useful in recalling which framework-res.apk this is!
Click OK. Then, click the down arrow next to Remote File. Open the Framework folder and highlight "framework-res.apk." Then click "Import." It'll take 15 or so seconds.
Click OK after the framework installs (you'll see it appear in your window!).
Modifying SystemUI.apk to remove the brightness bar
Let's actually do the mod now, eh? Click File in VTS and click "New Project." Why: Solutions are like "folders" and Projects are like "files" in VTS. It's just to keep you organized. We're going to be editing ONE file, so we'll make ONE solution and inside that solution will be ONE project.
Make sure Apk-Project is highlighted on the "Project" tab. Give the Project and Solution a name; doesn't matter what.
Click Apk-Tool on the left. Inside the framework tag box, type in the name you gave your framework. Or select it from the drop-down menu; whatever works for you.
Click Smali on the left. Choose API Level "4.1 Jelly Bean" Why: we aren't editing Smali (a different kind of code, besides XML), but it can't hurt, right?
Go to Build on the left. Make sure "Sign output file via the following method" is checked and Select "Keep old signature (not recommended)". It's not recommended because sometimes it can cause problems; but, it is the best option for system APKs (not user apks, like Pandora.apk). Why: every app has a signature verifying that it is made by this developer (and not some hacker). Think of a signature as a trip-wire for zipping and compiling APKs. If we do either of those, the signature will go crazy; if you have a "crazy"/tripped signature, your phone will be stuck on the boot logo. So, APKs are basically zip files; the signature is inside both the META-INF folder and AndroidManifest.xml file. Again, these files are tripped/changed if you unzip or re-zip or decompile or re-compile your APK (very sensitive!); you don't even have to open them and they will get changed! Thus, VTS, after we recompile, will insert the original META-INF folder and AndroidManifest.xml file (that it backed up when it pulled the APK) back into the now-modified APK.
Go to Import on the left. Click the "..." button on the right. Click the down arrow next to Remote file. Open the System folder.
BEHOLD the wonderful list of all the system apps installed on your phone. Scrooooooollllll down to SystemUI. apk. Select it and click import.
Click "OK" to begin decompiling SystemUI.apk
Wait about 20 seconds. You should be greeted with a set of folders called assets, res, and smali, as well as AndroidManifest.XML, apktook.yml, and buildevents.
Open res -> layout -> tw_status_bar_expanded.xml by DOUBLE-CLICKING it. WARNING: there are about 50 different folders that are called layout-blah and 50 different XML files that have "tw" and "status_bar" there. Make sure you open the right file.
You should get some nice XML code at the bottom. Add exactly this:
Code:
android:visibility="gone"
here (it's colored in red; scroll right to see it!):
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:id="@id/notification_panel" android:background="@drawable/back" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/close_handle_underlap">
<include android:layout_width="fill_parent" android:layout_height="@dimen/tw_notification_panel_header_height" layout="@layout/tw_status_bar_expanded_header" />
<com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/notification_panel_header_height" />
<HorizontalScrollView android:id="@id/quicksetting_scroller" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
<com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
</HorizontalScrollView>
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="@dimen/notification_panel_quicksettingbtn_height" android:overScrollMode="ifContentScrolls">
<LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" [B][COLOR="Red"]android:visibility="gone"[/COLOR][/B] android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip">
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="1.0dip">
<ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
<FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
</FrameLayout>
</LinearLayout>
<View android:background="#ff091a24" android:layout_width="fill_parent" android:layout_height="1.0dip" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
<TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
</RelativeLayout>
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
</LinearLayout>
</ScrollView>
</FrameLayout>
<com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height">
<RelativeLayout android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:src="@drawable/tw_status_bar_close" android:scaleType="fitXY" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:layout_width="fill_parent" android:layout_height="@dimen/tw_close_handle_height" android:layout_marginBottom="10.0dip" />
</RelativeLayout>
</com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>
Then, DO NOT TOUCH ANYTHING ELSE in the XML file. Unless you're feeling adventurous?
Click "Push All" on the top. If you did it right, it shall ask you "Do you want to save changes?"
Click yes. Wait 2 minutes while it re-compiles and pushes the APK to /system/app.
If all went well, your screen will flicker and you'll get the original wallpaper back. No worries. REBOOT YOUR PHONE (this will reload SystemUI.apk, disable adbd insecure, and put /system back in a read-only state: all good things!) and ENJOY NO BRIGHTNESS BAR.
Questions?
Click to expand...
Click to collapse
Plez guilde me how to change Carrier ID to Carrier Logo (*.png) into notif bar
i used galaxy s3 AT&T i747 rom Stock JB 4.1.1
Ái Nhân said:
Plez guilde me how to change Carrier ID to Carrier Logo (*.png) into notif bar
i used galaxy s3 AT&T i747 rom Stock JB 4.1.1
Click to expand...
Click to collapse
Hi! Unforunately, I don't know how to do that particular mod. This guide is more to help you decompile/recompile than provide exact instructions for all the other mods.
If you've seen that mod in a ROM, contact the developer! They're pretty friendly folk.
Ái Nhân said:
Plez guilde me how to change Carrier ID to Carrier Logo (*.png) into notif bar
i used galaxy s3 AT&T i747 rom Stock JB 4.1.1
Click to expand...
Click to collapse
Sorry I missed this! This tweak should work:
http://forum.xda-developers.com/showthread.php?t=2227624
~Ibrahim~
EDIT: Ah, this thread has a second page. Haha, I had a little more time to search!

[02/06] [How to] Custom txt/Carrier/center clock/custom icons/left side icons etc

Hello there
Here is a simple guide to add a Custom name to top-left status bar.
All You need is:
- Know how to decompile/recompiling Apk file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools ...
1. Decompile SystemUI.apk
2. navigate to res/layout/status_bar.xml
3.Open Status_bar.xml with notepad++
4.Copy this line like the following example:
Code:
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="@string/hello" android:singleLine="true" />
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="@drawable/status_bar_background" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<ImageView android:id="@id/notification_lights_out" android:paddingBottom="2.0dip" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:paddingStart="6.0dip" />
<LinearLayout android:orientation="horizontal" android:id="@id/status_bar_contents" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingStart="6.0dip" android:paddingEnd="6.0dip">
<LinearLayout android:orientation="horizontal" android:id="@id/notification_icon_area" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
[COLOR="Red"][B] <TextView android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="@string/hello" android:singleLine="true" />[/B][/COLOR]
<com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
<com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentStart="true" />
</LinearLayout>
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/system_icon_area" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.Traffic android:textAppearance="@style/TextAppearance.StatusBar.Traffic" android:gravity="left|center" android:id="@id/traffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_view" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:gravity="center" android:id="@id/battery_text" android:paddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
<com.erryy.BatteryText android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:textSize="12.0dip" android:gravity="center" android:paddingLeft="4.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="-3.0dip" android:singleLine="true" />
<ImageView android:id="@id/battery" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingStart="4.0dip" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingStart="6.0dip">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:layout_marginEnd="4.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
</ImageSwitcher>
<com.android.systemui.statusbar.phone.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0" android:paddingEnd="10.0dip">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
</com.android.systemui.statusbar.phone.TickerView>
</LinearLayout>
</com.android.systemui.statusbar.phone.PhoneStatusBarView>
"android:textAppearance="@style/TextAppearance.StatusBar.Clock" means that your custom text will have same colors and dimensions defined for clock (these are defined in /values/styles: 16dip and Holo Blue Light ).
If You want to add Your dip and your preferred color, just replaces above line with this:
android:textSize="15.0dip" android:textColor="#ffa6a6a6"
Code:
<TextView [COLOR="Red"]android:textSize="15.0dip" android:textColor="#ffa6a6a6"[/COLOR] android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:text="@string/hello" android:singleLine="true" />
You can change text color and size to fit your needs.
android:textSize="x.0dip"
and android:textColor="#hex code of Your preferred color"
for example #ffdd4814 is Ubuntu Orange
5) Now, the last step:
Navigate to res/values/string
and add this at the end of the file:
Code:
<string name="hello">Your text here</string>
Like this example:
Code:
... <string name="quick_settings_rssi_label">RSSI</string>
<string name="quick_settings_rssi_emergency_only">Emergency Calls Only</string>
<string name="quick_settings_settings_label">Settings</string>
<string name="quick_settings_time_label">Time</string>
<string name="quick_settings_user_label">Me</string>
<string name="quick_settings_wifi_label">Wi-Fi</string>
<string name="quick_settings_wifi_not_connected">Not Connected</string>
<string name="quick_settings_wifi_no_network">No Network</string>
<string name="quick_settings_wifi_off_label">Wi-Fi Off</string>
<string name="quick_settings_wifi_display_label">Wi-Fi Display</string>
<string name="quick_settings_wifi_display_no_connection_label">Wireless Display</string>
<string name="quick_settings_brightness_dialog_title">Brightness</string>
<string name="quick_settings_brightness_dialog_auto_brightness_label">AUTO</string>
<string name="status_bar_help_title">Notifications appear here</string>
<string name="status_bar_help_text">"Access them anytime by swiping down.
Swipe down again for system controls."</string>
<string name="accessibility_sleep_button">Sleep button.</string>
[COLOR="Red"]<string name="hello">Your text here</string>[/COLOR]
</resources>
6) Recompile back ... enjoy!!
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Service Provider
White clock & wifi/battery/signal white resources [how to]
Center Clock, left signals and how to replace battery/signal/wifi icons with custom
Add a text between signal icons!​
Guidelines to correctly set jdk in Windows and Linux​
To Flash Your Mods use a flashable template (Use a zip manager to add SystemUI inside)!
KitKat (put SystemUI inside priv-app folder)
View attachment flashable_template_KK.zip
Jellybean (put SystemUI inside app folder)
View attachment flashable_template_JB.zip
Simple Guide to use Apktool​
LOWERCASE TXT????
ADD THIS TO YOUR TEXTVIEW
Code:
android:textAllCaps="false"
do you do this custom?
Zpik said:
do you do this custom?
Click to expand...
Click to collapse
what you mean???
Better idea:
make an app
Sent from my Nexus 4 using Tapatalk 4
enricocid said:
Hello there
Here is a simple guide to add a Custom name to top-left status bar./QUOTE]
How can i put current gsm provider name as a parameter like in miui theme ?
Click to expand...
Click to collapse
adamslast said:
enricocid said:
Hello there
Here is a simple guide to add a Custom name to top-left status bar./QUOTE]
How can i put current gsm provider name as a parameter like in miui theme ?
Click to expand...
Click to collapse
decompile systemUI and navigate to /res/layout
and open
status_bar.xml
add the red line like in example:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:id="@id/status_bar" android:background="@drawable/status_bar_background" android:focusable="true" android:fitsSystemWindows="true" android:descendantFocusability="afterDescendants" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<ImageView android:id="@id/notification_lights_out" android:paddingLeft="6.0dip" android:paddingBottom="2.0dip" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" />
<LinearLayout android:orientation="horizontal" android:id="@id/status_bar_contents" android:paddingLeft="6.0dip" android:paddingRight="6.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/notification_icon_area" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
[COLOR="red"]<com.android.systemui.statusbar.phone.CarrierLabel android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />[/COLOR]
<com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
<com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentLeft="true" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/system_icon_area" android:layout_width="wrap_content" android:layout_height="fill_parent">
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_view" />
<include android:id="@id/signal_cluster_text" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_text_view" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:gravity="left|center" android:id="@id/dock_battery_text" android:paddingLeft="@dimen/status_bar_battery_cluster_padding" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="@dimen/status_bar_battery_cluster_text_margin" android:singleLine="true" />
<ImageView android:id="@id/dock_battery" android:paddingLeft="@dimen/status_bar_battery_cluster_padding" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.android.systemui.statusbar.policy.CircleDockBattery android:textAppearance="@style/TextAppearance.StatusBar.Battery" ... etc etc ...
etc ... etc ... etc ... etc ... ... ... ... ... ... ... ...
if You want to get other colors instead of Holo
simply delete android:textAppearance="@style/TextAppearance.StatusBar.Clock"
Code:
<com.android.systemui.statusbar.phone.CarrierLabel [U][B]android:textAppearance="@style/TextAppearance.StatusBar.Clock" [/B][/U]android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
and add this:
Code:
<TextView android:textSize="15.0dip" android:textColor="#ffa6a6a6"
Code:
<com.android.systemui.statusbar.phone.CarrierLabel [B][COLOR="Lime"]<TextView android:textSize="[COLOR="Blue"]16.0dip[/COLOR]" android:textColor="#[COLOR="Blue"]ffa6a6a6[/COLOR]"[/COLOR] [/B]android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
and choose your preferred dimension and your preferred color (the hex code)
then extract the attached smalis
View attachment CarrierLabel_source.zip
and put inside
smali/com/android/systemui/statusbar/phone/
recompile back and you're done!
Click to expand...
Click to collapse
Thanks. I will try it right away. But a last question: Which decompile and compile application do you recommend? I tried APK multitool but I can not compile and i allways have an error 21 message.
Edit: in Androidmultitools, when i try to compile after changes you mentioned i got this error message:
"I: Checking whether sources has changed...
I: Smaling...
[0,0] No enum constant org.jf.dexlib.AnnotationVisibility.RUNTİME
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: C:\AndroidMultitool_2.1_Win7\AndroidMultitool\Decompiled_apk\SystemUI\smali\com\android\systemui\statusbar\AnimatedImageView.smali
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:45)
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:33)
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:66)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:50)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:37)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:257)
at brut.androlib.Androlib.buildSources(Androlib.java:214)
at brut.androlib.Androlib.build(Androlib.java:205)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Sistem belirtilen dosyay bulamyor.
Sistem belirtilen dosyay bulamyor."
(Sistem belirtilen dosyay bulamyor.) means (system could not find defined file.)
What is wrong do you have an idea?
adamslast said:
Thanks. I will try it right away. But a last question: Which decompile and compile application do you recommend? I tried APK multitool but I can not compile and i allways have an error 21 message.
Edit: in Androidmultitools, when i try to compile after changes you mentioned i got this error message:
"I: Checking whether sources has changed...
I: Smaling...
[0,0] No enum constant org.jf.dexlib.AnnotationVisibility.RUNTİME
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: C:\AndroidMultitool_2.1_Win7\AndroidMultitool\Decompiled_apk\SystemUI\smali\com\android\systemui\statusbar\AnimatedImageView.smali
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:45)
at brut.androlib.src.DexFileBuilder.addSmaliFile(DexFileBuilder.java:33)
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:66)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:50)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:37)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:257)
at brut.androlib.Androlib.buildSources(Androlib.java:214)
at brut.androlib.Androlib.build(Androlib.java:205)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Sistem belirtilen dosyay bulamyor.
Sistem belirtilen dosyay bulamyor."
(Sistem belirtilen dosyay bulamyor.) means (system could not find defined file.)
What is wrong do you have an idea?
Click to expand...
Click to collapse
I'm using apktool ... I've never user this..
http://forum.xda-developers.com/showthread.php?p=28366939
Are you using linux (32 or 64 bit ?) or windows?
You coukd try to delete all installed frameworks and install it again
http://code.google.com/p/android-apktool/issues/detail?id=505
d\systemui\sta tusbar\AnimatedImageView.smali
is this renamed badly or is it only bad copy&paste here?
enricocid said:
I'm using apktool ... I've never user this..
http://forum.xda-developers.com/showthread.php?p=28366939
Are you using linux (32 or 64 bit ?) or windows?
You coukd try to delete all installed frameworks and install it again
http://code.google.com/p/android-apktool/issues/detail?id=505
d\systemui\sta tusbar\AnimatedImageView.smali
is this renamed badly or is it only bad copy&paste here?
Click to expand...
Click to collapse
I am using win7 64 bit in Turkish. I think this happens because of language and turkish characters. Especially in Turkish majuscule (i) is (İ) instead of (I) as it is in mainly western languages. I think that makes a unharmoniesness in application. I changed clavier in english, but does not work still because language is Turkish. Unfortunately changing language is no t possible once you install it in certain langue. Now i will try it to do in linux. Many thanks for your help.
btw the way, i could not find d\systemui\sta tusbar\AnimatedImageView.smali. is there a typing error or is my bad?
adamslast said:
I am using win7 64 bit in Turkish. I think this happens because of language and turkish characters. Especially in Turkish majuscule (i) is (İ) instead of (I) as it is in mainly western languages. I think that makes a unharmoniesness in application. I changed clavier in english, but does not work still because language is Turkish. Unfortunately changing language is no t possible once you install it in certain langue. Now i will try it to do in linux. Many thanks for your help.
btw the way, i could not find d\systemui\sta tusbar\AnimatedImageView.smali. is there a typing error or is my bad?
Click to expand...
Click to collapse
yes.. i think this is the problem. If you will use apktool in a 64bit linux distro, be sure to install necessary dependencies to avoid error 2 during compilation, because aapt & others are 32bit commands and need ia32-libs package to work correctly ...
so, apt-get install ia32-libs
enricocid said:
yes.. i think this is the problem. If you will use apktool in a 64bit linux distro, be sure to install necessary dependencies to avoid error 2 during compilation, because aapt & others are 32bit commands and need ia32-libs package to work correctly ...
so, apt-get install ia32-libs
Click to expand...
Click to collapse
I tried during tha last 4 days to compile systemui.apk file using almost every application, but no succes. I tried it on my win8 tablet in english language. İt decompile and compile the file unchanged, but not changed one. I have not installed linux unfortunately. I would be very grateful if you try compiling in linux maguro_JRW66Y stock and changed systemui files added below.
adamslast said:
I tried during tha last 4 days to compile systemui.apk file using almost every application, but no succes. I tried it on my win8 tablet in english language. İt decompile and compile the file unchanged, but not changed one. I have not installed linux unfortunately. I would be very grateful if you try compiling in linux maguro_JRW66Y stock and changed systemui files added below.
Click to expand...
Click to collapse
so i have to modify systemUI contained in stockfiles like the 2nd one? ok. tomorrow I will make it :good:
enricocid said:
so i have to modify systemUI contained in stockfiles like the 2nd one? ok. tomorrow I will make it :good:
Click to expand...
Click to collapse
Great! Thanks. :victory:
Edit: btw there are three changes.
1.Service Provider Name 2. Wireless speed 3.Invisible Power Menu.
But I was unsuccesful even with one change.
@enricocid
Very sorry. Could you take into consideration I newly added "SystemUI_SPN_WS_IPMI.zip" file please. Thanks.
adamslast said:
@enricocid
Very sorry. Could you take into consideration I newly added "SystemUI_SPN_WS_IPMI.zip" file please. Thanks.
Click to expand...
Click to collapse
OK k
adamslast said:
@enricocid
Very sorry. Could you take into consideration I newly added "SystemUI_SPN_WS_IPMI.zip" file please. Thanks.
Click to expand...
Click to collapse
@adamslast what are the changes You did?
I see no changes in res folder
Have You changed only the smali folder? Will I have to replace smali folder and recompile back?
here is recompiled systemUI without errors:
View attachment SystemUI.apk
enricocid said:
@adamslast what are the changes You did?
I see no changes in res folder
Have You changed only the smali folder? Will I have to replace smali folder and recompile back?
here is recompiled systemUI without errors:
View attachment 2313552
Click to expand...
Click to collapse
So many thanks! :good:
The changes are in status_bar.xml, ids.xml and styles.xml. I also add some java files in smali folder, two as you mentioned in your post. Mainly changes other than yours are:
1. http://forum.xda-developers.com/showthread.php?t=2241739
2. http://forum.xda-developers.com/showpost.php?p=35864541&postcount=785.
I will try it right now. Your help very appreciated.
adamslast said:
So many thanks! :good:
The changes are in status_bar.xml, ids.xml and styles.xml. I also add some java files in smali folder, two as you mentioned in your post. Mainly changes other than yours are:
1. http://forum.xda-developers.com/showthread.php?t=2241739
2. http://forum.xda-developers.com/showpost.php?p=35864541&postcount=785.
I will try right now and i hope to give a good feedback. Your help very appreciated.
Click to expand...
Click to collapse
ok.. I found the error
Code:
<com.android.systemui.statusbar.phone.CarrierLabel [COLOR="Red"]<TextView[/COLOR] android:textSize="15.0dip" android:textColor="#ffffff" android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
<TextView is a Class that displays text to the user and optionally allows them to edit it. A TextView is a fixed text...
Here You are using <com.android.systemui.statusbar.phone.CarrierLabel that let You to display the Carrier Label using smali to display a dinamic text
so You can't use two classes in one line
When You want to modify color and dip of <com.android. etc ... ... ... > You should add
Code:
android:textSize="15.0dip" android:textColor="#ffffff"
The correct one is this:
Code:
<com.android.systemui.statusbar.phone.CarrierLabel [COLOR="Red"]android:textSize="15.0dip" android:textColor="#ffffff"[/COLOR] android:gravity="left|center" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
For example, in KBmeter guide, if You wanna change the color and dip of the kbmeter
Code:
<com.android.systemui.statusbar.policy.Traffic android:textAppearance="@style/TextAppearance.StatusBar.Traffic" android:gravity="right|center" android:id="@id/traffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
Then delete android:textAppearance="@style/TextAppearance.StatusBar.Traffic"
Code:
<com.android.systemui.statusbar.policy.Traffic [COLOR="Red"]android:textAppearance="@style/TextAppearance.StatusBar.Traffic"[/COLOR] android:gravity="right|center" android:id="@id/traffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
and add android:textSize="15.0dip" android:textColor="#ffffff" ... like this:
Code:
<com.android.systemui.statusbar.policy.Traffic [COLOR="Red"]android:textSize="15.0dip" android:textColor="#ffffff"[/COLOR] android:gravity="right|center" android:id="@id/traffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
Once done, You can delete also the style You created in /values/styles.xml
Code:
<style name="TextAppearance.StatusBar.Traffic" parent="@style/TextAppearance.StatusBar.Clock">
<item name="android:textSize">14.0dip</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">#ffffffff</item>
<item name="android:textAllCaps">false</item>
</style>
and recompile back
Here is the files corrected
View attachment SystemUI.apk
View attachment status_bar.zip
enricocid said:
ok.. I found the error
Here is the files corrected
View attachment 2313666
View attachment 2313668
Click to expand...
Click to collapse
All changes properties work great. The only thing left to do is changing the color of the signals and the clock from blue to white like others. Could you give me some ideas about how to do it please, if you dont mind. Many thanks.
adamslast said:
All changes properties work great. The only thing left to do is changing the color of the signals and the clock from blue to white like others. Could you give me some ideas about how to do it please, if you dont mind. Many thanks.
Click to expand...
Click to collapse
For clock:
decompile systemUI I give to You yesterday
Navigate in /res/values/styles.xml
and open it
search for
Code:
<style name="TextAppearance.StatusBar.Clock" parent="@*android:style/TextAppearance.StatusBar.Icon">
<item name="android:textSize">16.0dip</item>
<item name="android:textStyle">normal</item>
[COLOR="Red"]<item name="android:textColor">@*android:color/holo_blue_light</item>[/COLOR]
</style>
Change it like this:
Code:
<style name="TextAppearance.StatusBar.Clock" parent="@*android:style/TextAppearance.StatusBar.Icon">
<item name="android:textSize">16.0dip</item>
<item name="android:textStyle">normal</item>
[COLOR="Red"]<item name="android:textColor">#ffffffff</item>[/COLOR]
</style>
@adamslast
To change icons to white simply copy and paste this resources in drawable-xhdpi (in decompiled SystemUI) folder overwriting the originals ones
View attachment RESOURCES.zip

[GUIDE][GB] Music Lock Controls

Customizable remodified CM lock music controls + Information​
Updated (Read):
Fullscreen AlbumArt
Moving trackname if it is long (credits to sir El Uyuz [email protected], Bhevz Cailao
@fb and lenar [email protected])
Bugs:if you find one, feel free to report
NOTE: Tested on Gingerbread version DXLF baseband. Still not sure if will work on other version, you can give it a try but i dont have the responsibility on bricking/damaging your phone :
ScreenShot:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
What you need
- Basic xml techniques
- Decompile recompile skills
- android.policy.jar
- framework-res.apk
- SystemUI.apk
Steps:
Click to expand...
Click to collapse
1.) Decompile android.policy.jar.
2.) Download MusicInfo.zip in attachment and extract it to smali folder.
3.) Decompile framework-res.apk.
4.) open res/layout/zzz_keyguard_screen_clockwidget.xml below:
Code:
<view android:gravity="center" android:orientation="vertical" android:id="@id/clock_time_and_date" android:layout_width="fill_parent" android:layout_height="wrap_content" class="com.android.internal.policy.impl.ClockWidget$TimeAndDate">
add this line:
Click to expand...
Click to collapse
Code:
[COLOR="Red"]<LinearLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<com.tenten.AlbumArt android:layout_width="100.0dip" android:layout_height="100.0dip" android:scaleType="fitCenter" />
<com.tenten.trackname android:textColor="#ffffffff" android:ellipsize="marquee" android:gravity="center_horizontal" android:background="#00000000" android:paddingLeft="10.0dip" android:paddingRight="10.0dip" android:focusable="true" android:focusableInTouchMode="true" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:marqueeRepeatLimit="marquee_forever" />
<com.tenten.MusicControl android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
<com.tenten.prev android:layout_marginRight="10.0px" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.tenten.play android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.tenten.next android:layout_marginLeft="10.0px" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</com.tenten.MusicControl>
</LinearLayout>[/COLOR]
It will be like this:
Click to expand...
Click to collapse
Code:
<view android:gravity="center" android:orientation="vertical" android:id="@id/clock_time_and_date" android:layout_width="fill_parent" android:layout_height="wrap_content" class="com.android.internal.policy.impl.ClockWidget$TimeAndDate">
[COLOR="Red"]<LinearLayout android:gravity="center_horizontal" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<com.tenten.AlbumArt android:layout_width="100.0dip" android:layout_height="100.0dip" android:scaleType="fitCenter" />
<com.tenten.trackname android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="10.0px" android:paddingRight="10.0px" android:singleLine="true" />
<com.tenten.MusicControl android:gravity="center_horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
<com.tenten.prev android:layout_marginRight="10.0px" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.tenten.play android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.tenten.next android:layout_marginLeft="10.0px" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</com.tenten.MusicControl>
</LinearLayout>[/COLOR]
<LinearLayout android:gravity="center" android:layout_width="wrap_content" android:layout_height="25.0dip">
<ImageView android:id="@id/zzz_hour01" android:layout_width="17.0dip" android:layout_height="25.0dip" />
<ImageView android:id="@id/zzz_hour02" android:layout_width="17.0dip" android:layout_height="25.0dip" />
<ImageView android:id="@id/zzz_colon01" android:layout_width="17.0dip" android:layout_height="25.0dip" android:src="@drawable/zzz_unlock_clock_colon" />
<ImageView android:id="@id/zzz_minute01" android:layout_width="17.0dip" android:layout_height="25.0dip" />
<ImageView android:id="@id/zzz_minute02" android:layout_width="17.0dip" android:layout_height="25.0dip" />
</LinearLayout>
<LinearLayout android:layout_gravity="bottom" android:orientation="vertical" android:layout_width="0.0dip" android:layout_height="0.0dip">
<TextView android:textSize="0.0dip" android:typeface="sans" android:textColor="#ffffffff" android:id="@id/zzz_ampm" android:layout_width="0.0dip" android:layout_height="0.0dip" android:shadowColor="@color/black" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
</LinearLayout>
<TextView android:textSize="20.0sp" android:typeface="sans" android:textColor="#ffffffff" android:id="@id/zzz_date_month" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="2.0dip" android:shadowColor="@color/black" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
</view>
5.) Add a png in res/drawable folder and name it: default_music_logo.
6.) Recompile framework-res.apk and decompile it again.
7.) Go to res/values/public.xml and find this line:
Code:
<public type="drawable" name="default_music_logo" id="[COLOR="Red"]ImportantID[/COLOR]" />
8.) Remember the important ID. Go back again to your android.policy.jar and open smali/com/tenten/AlbumArt.smali.
9.) Find this line:
Code:
const v2, 0x1080411
10.) Replace 0x1080411 with your ImportantID BUT remove the 0 next to x. (Example: 0x01234567 to 0x1234567)
Code:
const v2, [COLOR="red"]ImportantID[/COLOR]
11.) Recompile framework-res.apk and android.policy.jar.
12.) Decompile SystemUI.apk.
13.) Download UI_MusicInfo.zip in attachment and extract it to smali folder.
14.) Go to res/layout/status_bar.xml and below:
Code:
xmlns:android="http://schemas.android.com/apk/res/android">
add this line:
Click to expand...
Click to collapse
Code:
[COLOR="red"]<com.tenten.MusicHelper android:layout_width="0.0dip" android:layout_height="0.0dip" />[/COLOR]
It will be like this:
Click to expand...
Click to collapse
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.LenoxStatusBarView android:orientation="vertical" android:background="#ff000000" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:layout_width="fill_parent" android:layout_height="fill_parent">
[COLOR="red"]<com.tenten.MusicHelper android:layout_width="0.0dip" android:layout_height="0.0dip" />[/COLOR]
15.) Recompile SystemUI.apk.
16.) Finally, zip your recompiled android.policy.jar, framework-res.apk, SystemUI.apk and flash it.
17.) download and Install CustomizableParts.apk in attachment to control the informations
18.) If it works, jump. If no, tell me
Fullscreen AlbumArt in Lockscreens (KITKAT MODE ON)
Click to expand...
Click to collapse
Description: Fullscreen Album art in lockscreen like kitkat, all lockscreens are affected except circle lock. (It has no main layout :crying Sorry but no screenshot, you can imagine it by the title itself. (But actually, Im lazy. xD )
NOTE: This will work on lockscreens that has mainlayout and its main parent must be relativelayout.
1.) Open all of these layouts on framework-res/res/layout:
keyguard_screen_password_portrait.xml
keyguard_screen_tab_unlock.xml
keyguard_screen_unlock_portrait.xml
2.) then do this in the three layout that you have opened:
PUT THIS:
Click to expand...
Click to collapse
Code:
<com.tenten.AlbumArt android:layout_width="240.0px" android:layout_height="320.0px" android:background="#ff000000" android:scaleType="centerInside" />
BELOW THIS:
Click to expand...
Click to collapse
Code:
xmlns:android="http://schemas.android.com/apk/res/android">
IT WILL BE LIKE THIS:
Click to expand...
Click to collapse
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@id/patternlockscreenwallpaper_root" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.tenten.AlbumArt android:layout_width="240.0px" android:layout_height="320.0px" android:background="#ff000000" android:scaleType="centerInside" />
NOTE: In keyguard_screen_tab_unlock.xml, it must be below xmlns:tabunlock="http://schemas.android.com/apk/res/com.android.tabunlock">
3.) Save them and close, Then open zzz_keyguard_screen_lockscreenwallpaper.xml
4.) Then again:
PUT THIS:
Click to expand...
Click to collapse
Code:
<com.tenten.AlbumArt android:layout_width="240.0px" android:layout_height="320.0px" android:background="#ff000000" android:scaleType="centerInside" />
BELOW THIS:
Click to expand...
Click to collapse
Code:
<ImageView android:id="@id/lockscreenwallpaper_image" android:layout_width="fill_parent" android:layout_height="fill_parent" android:scaleType="fitXY" />
IT WILL BE LIKE THIS:
Click to expand...
Click to collapse
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@id/lockscreenwallpaper_root" android:background="#80000000" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<ImageView android:id="@id/lockscreenwallpaper_image" android:layout_width="fill_parent" android:layout_height="fill_parent" android:scaleType="fitXY" />
<com.tenten.AlbumArt android:layout_width="240.0px" android:layout_height="320.0px" android:background="#ff000000" android:scaleType="centerInside" />
</RelativeLayout>
5.) Save again all then recompile your framework-res
6.) Flash to obtain kitkat mode.
PS: Need help? Go to 2nd post.
Java Source: https://github.com/tentenponce/Music_Info_on_Lockscreen
CREDITS​[email protected]
CyanogenMod
AOSP
StackOverflow.com
Lenox Devs
Potato Inc
[email protected] for inspiring me on his music lock controls ​
FAQs / Help
FAQs
EDIT: Sorry for the wrong info, please read the first Q and A again. thank you
Q: Why music controls not working?
A: There's something you need to modify on MusicUtils.smali, according to sir @PineappleOwl, for a while, use the lenox music that has been attach my sir @GSculerlor around here, just look for it
EDIT: Download MusicUtils.zip on attachment and extract it on your Music.apk/smali folder.
Q: My album art is not updating/changing/not the same with my music album art?
A: It is because the data from your old music, (maybe u use other player). Clear the data of your old music and stock music then check it again (Credits, Mark[email protected])
Q: No AlbumArt when my phone is plug into Computer?
A: Yes, to avoid force close/hotboot.
Q: F*ck! My phone reboots when I unplug it from the Computer.
A: Wait for your sd card to be scanned then unplug it. Patience is <3
Q: Some alien options on CustomizableParts, how to use it?
A: Follow my other guides.
NOTE
Changing Song will be a bit laggy because it is updating.
You can Put it on other layouts of lockscreen (Pattern lock, Pin, etc.)
awesome dude
will try
Reserve
hai i mohammad Azim
everything implemented. but still Lockscreen music control not works.
ROM - JELLYFUSION
FRIMWARE - DDMF4
DEVICE - GALAXY Y DUOS
Ten, its working on me hehe I used stock
kartik verma said:
everything implemented. but still Lockscreen music control not works.
ROM - JELLYFUSION
FRIMWARE - DDMF4
DEVICE - GALAXY Y DUOS
Click to expand...
Click to collapse
It's on default, try to run music then go to lockscreen. See if it's there.
Sir @tentenponce, What Music app work with this guide ?
GSculerlor said:
Sir @tentenponce, What Music app work with this guide ?
Click to expand...
Click to collapse
Default one will do
Report : CM Parts not work on me :crying:
SS after i press pause button :
GSculerlor said:
Sir @tentenponce, What Music app work with this guide ?
Click to expand...
Click to collapse
I only tried default music, but you can try on other and you can tell me so i can tell others credits goes to you ofcourse
GSculerlor said:
Report : CM Parts not work on me :crying:
SS after i press pause button :
View attachment 2750570
Click to expand...
Click to collapse
Ill update the thread, i saw that also, in lockscreen, Cm Style is a bug. Please avoid using that for now sir. Catching intents in lockscreen is complicated, that's why I can't also catch the trackname on lockscreen. </3 By the way, thanks for reporting :good:
Wow, awesome sir. Thanks
tentenponce said:
It's on default, try to run music then go to lockscreen. See if it's there.
Click to expand...
Click to collapse
Sir, m use it on Google play music. so i think is is the problem.
sorry to say.
but its a worst feature.
And never works on stock music player as well this feature also not working on another music play (Google play Music)
plssss.. Fix it and this feature is gud and i also want in my rom.
Device - Galaxy Y Duos
Frimware - GINGERBREAD.DDMF4
kartik verma said:
sorry to say.
but its a worst feature.
And never works on stock music player as well this feature also not working on another music play (Google play Music)
plssss.. Fix it and this feature is gud and i also want in my rom.
Device - Galaxy Y Duos
Frimware - GINGERBREAD.DDMF4
Click to expand...
Click to collapse
It complete work on default music player. Bug just on CM style
Sent from my GT-S5360 using XDA Free mobile app
GSculerlor said:
It complete work on default music player. Bug just on CM style
Sent from my GT-S5360 using XDA Free mobile app
Click to expand...
Click to collapse
can u add this mod in my framework apk and policy.jar
Sir @tentenponce, i follow your instruction very carefully and i got random reboot XD
And i position in on top, how to move it to bottom ?
What is xml like galaxy s2/glass lock ?
TIA
Mranggapo said:
Sir @tentenponce, i follow your instruction very carefully and i got random reboot XD
And i position in on top, how to move it to bottom ?
What is xml like galaxy s2/glass lock ?
TIA
Click to expand...
Click to collapse
take whole xml code of music control and **** it below.
like if i have clock and date and above music control. cut the code and paste below the clock code
done.
Mranggapo said:
Sir @tentenponce, i follow your instruction very carefully and i got random reboot XD
And i position in on top, how to move it to bottom ?
What is xml like galaxy s2/glass lock ?
TIA
Click to expand...
Click to collapse
Dont use CM Style, it's a bug. Ill try to fix it. install the apk and choose default or minimal.

Categories

Resources