Transparent Status Bar--Instructions for DIY - Samsung Galaxy Nexus

Disclaimer: I do not have any formal training with anything I'm covering here and it's entirely possible….dare I say probable…that I may state something incorrectly either partially or wholly (hopefully I’m not that far off). So this is just how I've come to understand things from my own self study as well as staring smali for countless hours (although I have to say the more I learn, the more I learn I don't know ). Hopefully there’s another beginning android hobbyist that finds this useful and/or inspires him to try some new things.
**These instructions apply to Mac and Linux only, due to the fact we're working with aosp source and building in windows is not supported at this time**
Enabling Translucency
I approached this a little different than I’m used to seeing in terms of a mod. Normally we start off by decompiling an apk and go from there. Since this is for an aosp rom, we have easy access to the source code and can make changes there. Now, I don’t proclaim to know java. I have very, very little programming experience, and even that is limited to an introductory C++ class I just took. But even without knowing java, you’ll have a much easier time reading java source code than you will smali. So, yes, you need to sync with aosp to use this guide. It's not hard, and there's good instructions HERE. As an aside, my personal opinion is that anyone that a true-blue xda'er should have aosp syned...even if you have no intention of building roms. It's like an android encyclopedia. I've learned A TON just from poking around/reading though some parts. I probably comprehend < 10%, but it's easily been one of the most beneficial things I've done to further my understanding.​
So now you have the source code. What we need to change is the PixelFormat for the statusbar. In froyo and gingerbread this was done in StatusBarService. It’s been changed a little in ics, although the edits remain in SystemUI. The two files I changed were StatusBar and PhoneStatusBar.
Starting in the root of your aosp working directory, the absolute path of the first file I edited is
Code:
frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/StatusBar.java
Open this in a good text editor. The PixelFormat parameter is specified in the getStatusBarHeight function. In the version I edited it is easily found on lne 124. Just search for “PixelFormat” and you’ll find it. (ignore the search return that’s part of the import statement at the beginning of the file) As soon as you get there you’ll see the problem. PixelFormat.OPAQUE. Replace OPAQUE with TRANSLUCENT. Save
Next you make similar edit in PhoneStatusBar.java. From the same directory that StatusBar.java is in, go to the phone directory and open PhoneStatusBar.java in your text editor. Now this file is much, much longer to read through. Rather than doing that (of course you can if you want) just performa search for that same text again “PixelFormat” You’ll get several returns, some of them will already have TRANSLUCENT set.
BUT...Don’t get carried away and change all the OPAQUE values. One of the search returns will be part of the function getRecentsLayoutParams (starts on line 378). The portion of code that you might be temted to change checks the PixelFormat by way of a boolean test
Code:
(opaque ? PixelFormat.OPAQUE : PixelFormat.TRANSLUCENT)
I left this alone.Edit: After reading the entire code a little bit more, I think we could change it to
Code:
PixelFormat.TRANSLUCENT
without any ill effects, although I'm not sure what, if any, additional benefit we'd see. I have not tried.​
The exact places I did change OPAQUE to TRANSLUCENT were in lines 311, and 481. That’s it for the code portion. Make sure to save your changes. Now go back to the res directory and we need to edit some xml files.
From the root of the SystemUI directory, open res/values/colors.xml. Find the entry for “status_bar_background” and change it’s value to whatever you want. In mine I’ve set it to “a6000000” which black but 35% translucent. The first 2 characters control the opacity on a scale from 0-255 where 0 is completely transparent and 255 is fully opaque. That value is then stated in hexadecimal format; e.g. 0=00, 255=ff.
*if you also want a translucent bottom menu bar, it is set in res/layout/navigation_bar.xml. Change the hex value of android:background=”ff000000” to your desired value for opacity.*
Now you should have all the edits in place for a translucent statusbar. All that’s left is to compile the apk. Before you compile SystemUI, you need to have ran the extract-files script. Only needs to be done once. Connect your phone to the computer(making sure that usb debugging is turned on) then in terminal, starting from the root of your aosp working directory:
Code:
cd device/samsung/maguro/
./extract-files.sh
Let the script finish. It will create a new vendor directory in the root of your working directory and copy several files from your phone.
Now cd back to the root of your working directory and run
Code:
. build/envsetup.sh
Note the period and space before build. This is an important step which initialized the build environment. Several new commands will be available now such as "mm" "mmm" "croot" amongst others. Type "help" (without the quotes) for a full list of the new commands available.
Next step to build your SystemUI is to run lunch. Just type "lunch" and press enter:
Code:
pendo:master pendo$ lunch
You're building on Darwin
Lunch menu... pick a combo:
1. full-eng
2. full_x86-eng
3. vbox_x86-eng
4. full_stingray-userdebug
5. full_wingray-userdebug
6. full_crespo-userdebug
7. full_crespo4g-userdebug
8. full_maguro-userdebug
9. full_toro-userdebug
10. full_panda-eng
Which would you like? [full-eng]
It will list the available builds. Number 8 should be for maguro-user debug. Select it and press enter. And lastly, type
Code:
make SystemUI
It will take several minutes to build, especially the first time. But once it’s done, your new SystemUI will be in out/target/product/maguro/system/app/SystemUI.apk.

Here is a SystemUI that I built that has a translucent statusbar. It also has a circle battery mod I recently made in ics blue. This was built on 4.0.3 sources.
Here's a flashable zip:
TransStatusbar-SmoothCircleMod_4.0.3.maguro-signed.zip

Smali edits
OK...here's some instructions as a smali edit. Things to keep in mind here....smali is, for me at least, challenging to follow and fully comprehend what you are looking at. Also, this set of instructions is based off of working on a SystemUI for 4.0.3. My goal here is to give precise enough steps so that the right edits are made, while also trying to be "universal" in that this will hopefully work on other SystemUI's going forward. If we discover that tweaks need to be made, I'll edit this list.
Pixel format is stored as a integer constant. To review, here are some values of interest for this thread. (blue text is value)
OPAQUE(no alpha bit): -0x1
RGB_565(also no alpha): 0x4
TRANSLUCENT(many alpha bits) -0x3
First file to edit is StatusBar.smali. Open in your preferred text editor and search for this text:
Code:
Landroid/view/WindowManager$LayoutParams;-><init>(IIIII)V
Go to the line above it and change the last value from -0x1 to -0x3.
Next open PhoneStatusBar.smali. Search for this text:
Code:
const v4, 0x4800068
replace the 2 lines underneath with this:
Code:
const/4 v5, -0x3
move v2, v1
Next search for this text:
Code:
Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPixelFormat:I
Once again we're going to edit the line above and change the last value to -0x3.
You can see the pattern of changing -0x1 to -0x3. However, you may notice that it's a 0x4 that your're replacing. You won't ever be replacing anything vastly different. So when following these instructions if you find that you're replacing something other than -0x1 or a 0x4, that should raise a red flag that it might not be the right thing to edit. *The first edit in PhoneStatusBar is a little different than the others and I think there is more than one way to do that, but this is how I did.
You may notice that I haven't listed the entire line for the search criteria ....this is because there may be differences with the local variables associated. Your file may be assigning the pixel format to local variable v8 and the next guys v9. *The first search in PhoneStatusBar I did give the whole line.
That's it for smali edits. Now you still have the res directory edits. With an aosp based rom, you need to change the hex value for status_bar_background in drawables.xml. Also, you now have translucency available for the softkey area.....it's background is set via hex color in res/layout/navigation_bar.xml.

I've been wanting a smooth circle battery mod! Only problem is, on Roman's AOKP rom flashing it makes the statusbar and virtual buttons disappear Happens with the other circle battery mod as well :/

Same here, soft buttons and status bar dissapear
Sent from my Galaxy Nexus using xda premium

This may just be me, but I got the battery only circle mod going on Romano's rom with the apex 4 kernel. Didn't work with the other kernel I was on.

awesome instructions im going to download asop on my linux pc tonight and have at the systemui on boxing day or something. ive got the softkeys themed but thats as far as i can get without a ton of fc's when decompiling and editing xml's and some pngs, so hopefully this will help me learn a bit more.
thanks for the awesome write up!
edit: i get the same problem as the above people when flashing this on the rom in my sig

pendo, thanks so much for this. its very educational and I appreciate the time you took to help all of us.
my question is...
in the cyanogenmod source instead of stating "opaque" or "translucent" it shows PixelFormat.RGB_565 which (I think) means it's 16bit and opaque. do you think it would have to then be changed to ARGB_8888, or something different? here's the link to the info I found: http://developer.android.com/reference/android/graphics/Bitmap.Config.html
I'm just unsure how to apply this info.
thanks man, love your work, glad to see you here!
Sent from my Galaxy Nexus using xda premium

I used apktool to decompile the systemui.apk. I found the status bar files. But they are smali. When I edit them with notepad+ I cannot find the PixelFormat line. Sucks.
Sent from my Galaxy Nexus using XDA App

joshnichols189 said:
I've been wanting a smooth circle battery mod! Only problem is, on Roman's AOKP rom flashing it makes the statusbar and virtual buttons disappear Happens with the other circle battery mod as well :/
Click to expand...
Click to collapse
My bad, I left out one VERY IMPORTANT detail. Whether or not you build your own or use the one I compiled it is a deodexed SystemUI.apk. If you previously had an odexed SystemUI then you MUST delete SystemUI.odex
I have been told that my apk works with this 4.0.3 IML74K rom.
gn00my said:
Same here, soft buttons and status bar dissapear
Sent from my Galaxy Nexus using xda premium
Click to expand...
Click to collapse
Please see above note.
Also, these instructions as well as the provided apk DO NOT have Paul's softkey mod. I'm hesitant to say this, but I am tinkering a bit trying to replicate the edits in source form. I know I posted a SystemUI that had those edits for 4.0.2 but I did them as smali edits. I wish to add them to the source code which would make it much easier for updates. But I have no progress report on that. The *main* purpose of this thread was informational. I wanted to offer some help for someone to either do it themselves, or help someone who has the capacity/desire to update the apk as needed.
EkostonS said:
awesome instructions im going to download asop on my linux pc tonight and have at the systemui on boxing day or something. ive got the softkeys themed but thats as far as i can get without a ton of fc's when decompiling and editing xml's and some pngs, so hopefully this will help me learn a bit more.
thanks for the awesome write up!
edit: i get the same problem as the above people when flashing this on the rom in my sig
Click to expand...
Click to collapse
This is built purely from aosp sources, not CM. I would not expect what I compiled to work on anything other than aosp 4.0.3. However, the information in the first post should help you make a translucent statusbar if the CM9 source code is available somewhere.
allofusjw said:
pendo, thanks so much for this. its very educational and I appreciate the time you took to help all of us.
my question is...
in the cyanogenmod source instead of stating "opaque" or "translucent" it shows PixelFormat.RGB_565 which (I think) means it's 16bit and opaque. do you think it would have to then be changed to ARGB_8888, or something different? here's the link to the info I found: http://developer.android.com/reference/android/graphics/Bitmap.Config.html
I'm just unsure how to apply this info.
thanks man, love your work, glad to see you here!
Sent from my Galaxy Nexus using xda premium
Click to expand...
Click to collapse
Yes, I actually had some information regarding that in the first draft I had made, however I was getting concerned with the length as it was so I trimmed it down a bit.
Yes, RGB_565 is 16bit opaque. You should just change it to TRANSLUCENT. I've done this before, but in smali. One thing that I haven't figured out is why it's called RGBA vs ARGB. The hex values are done in ARGB. Go figure.
Also, here's some info that will help when trying to do this edit backwards, aka decompiling with apktool Obviously when aapt compiles it doesn't store the code as TRANSLUCENT....but here's some of the values that it does store of what you'll most commonly see:
TRANSLUCENT = -0x3
OPAQUE = 0x1
RGBA_8888 = 0x1
RGBX_8888 = 0x2
RGB_565 = 0x4

fatsix said:
I used apktool to decompile the systemui.apk. I found the status bar files. But they are smali. When I edit them with notepad+ I cannot find the PixelFormat line. Sucks.
Sent from my Galaxy Nexus using XDA App
Click to expand...
Click to collapse
No....you cannot edit with Notepad.
my bad, I missed the "+"
Make your search for "mPixelFormat" and you should get better results. But it isn't as straight forward in smali. I'm still getting better at, but it is definitely more difficult to decipher what's happening in smali. Something that I've done to help is to compare source code with decompiled smali (making sure it's the same file).

I decompiled the classes.dex before with something else. Was easier to edit. Can't remember which or find the directions. Java - jar I think.
Sent from my Galaxy Nexus using XDA App

pendo said:
The *main* purpose of this thread was informational. I wanted to offer some help for someone to either do it themselves, or help someone who has the capacity/desire to update the apk as needed.
-Yes, I actually had some information regarding that in the first draft I had made, however I was getting concerned with the length as it was so I trimmed it down a bit.
-Yes, RGB_565 is 16bit opaque. You should just change it to TRANSLUCENT. I've done this before, but in smali. One thing that I haven't figured out is why it's called RGBA vs ARGB. The hex values are done in ARGB. Go figure.
Click to expand...
Click to collapse
-mission accomplished!
-isn't that how things always work out?
great, thank you very much! i hate having to reapply my theme edits with every rom flash. this is very helpful.
one more question...
will this edit "stick" in my local cyanogenmod workspace after a repo sync, or, would that require setting up my own github repo to view changes to cm framework vs my edited framework? please don't feel obligated to give an in depth explanation if that's what this question requires. I'd just like to know if my thinking is on the right path. thank you!
Sent from my Galaxy Nexus using xda premium

ahh that would make sense, but cm is built off asop and your last transparancy mod worked on cm9

Would anyone please show a pic with the final result? I am most interested in this mod once i get my GNex by new year.

Here you go mind of small but not a problem at all.
Sent from my Galaxy Nexus using xda premium

Neat trick. Many thanks!

did you noticed dialer status bar isn't black?..How can l fix taht?Thanks!

fatsix said:
I decompiled the classes.dex before with something else. Was easier to edit. Can't remember which or find the directions. Java - jar I think.
Sent from my Galaxy Nexus using XDA App
Click to expand...
Click to collapse
If you're including the need to download aosp source, you would be correct. But the mod itself I feel is easier in source, solely based on the fact that it's easier to read. Sure, if you're familiar with the edit and have done it before you can decompile and search for whatever key terms you wish and then make the "-0x3" edits. But by viewing the source, it's pretty obvious on where/how to make the edits.
allofusjw said:
-mission accomplished!
-isn't that how things always work out?
great, thank you very much! i hate having to reapply my theme edits with every rom flash. this is very helpful.
one more question...
will this edit "stick" in my local cyanogenmod workspace after a repo sync, or, would that require setting up my own github repo to view changes to cm framework vs my edited framework? please don't feel obligated to give an in depth explanation if that's what this question requires. I'd just like to know if my thinking is on the right path. thank you!
Sent from my Galaxy Nexus using xda premium
Click to expand...
Click to collapse
It should, or at least it does with aosp and repo. Unless the package is updated.....(I think...)
EkostonS said:
ahh that would make sense, but cm is built off asop and your last transparancy mod worked on cm9
Click to expand...
Click to collapse
Yes, CM is based off aosp but I can assure you there are some significant differences...at least for gingerbread. I would anticipate there are less differences between CM9 and ics at this stage of the game. I didn't know that my last one worked on CM9.....my guess is that whatever changed in 4.0.3 hasn't made it's way into CM9's source.
manager77 said:
did you noticed dialer status bar isn't black?..How can l fix taht?Thanks!
Click to expand...
Click to collapse
No, I didn't notice anything....I have no way to view what I built! Lol...
Well, I'm not exactly sure off the top of my head. Does anyone know if my previous SystemUI had a translucent statusbar? I should be able to figure it out pretty easily if it was...

Thanks for the info. You really got me interested in this stuff!
For Windows users (like me), I believe somebody posted a VMWare images ready to do these kind of things.
Might give it a try when I'm back from holiday.
Sent from my Galaxy Nexus using xda premium

Related

[Q] De-TouchWizzing MusicPlayer.apk

hello guys,
i want to "de-touchwiz" the music player so i can use it on miui. i managed to merge the twframework styles and colors with the musicplayers' ones and looked for drawables in twframework that are referenced by these and put inside musicplayer. i looked through all the xmls and where i found some "touchwiz:color" or similar i changed it so it points now to the local color/style file not the twframework one
but i got stuck at some points: i have some layout files that refer to frame layout with com.sec.android.touchwiz.widget and inside these touchwiz properties, like for android:id or things like that but touchwiz:twIndexViewHandlePosition and xmlns:touchwiz="http://schemas.android.com/apk/res/touchwiz". what should i do with them?
and do i have to change the smali code, too? i guess so but i don't exactly know where to start with it.
thanks very much for your help
-picard
anyone?
-10char
instead of removing those tw attributes, you could try to merge the tw framework into the apk.
Just decompile the frameworks and copy their source folders into the music's app source folder.
that's what i try to do, i copied all referenced images and tw color attributes to the apk, but for these i don't know how to change (i guess i need to make it an android attribute, can i make it by simply merging those from the framework?)
but what is "com.sec.android.touchwiz.widget" referring to? what do i have to merge to my app?
I did not meant resources but code.^^
"com.sec.android.touchwiz.widget" is a class somewhere in one of the tw frameworks.
okay, my bad
trying it
How did you go with this apk? I'm working on the same thing at the moment, I'm interested to know what happened.
Thanks
interested) hope you can get something done
Sent from my GT-I9000 using Tapatalk 2
kage00 said:
How did you go with this apk? I'm working on the same thing at the moment, I'm interested to know what happened.
Thanks
Click to expand...
Click to collapse
actually i dropped the project due to lack of time and skills
picard666 said:
actually i dropped the project due to lack of time and skills
Click to expand...
Click to collapse
I know what you mean, this app is a nightmare - samsung really made sure this apk was bloody difficult to port, I dont know what else to try, I keep having errors and the apk wont start, I think it has something to do with the boot sequence not being the same on AOSP as on a samsung rom, it checks for a certain sequence and if it doesn't see it, the app won't start...

[Q] Launcher2.apk image file edits?

Hi all,
I am trying to make a simple change to the Launcher2 desktop, I can't stand the divider line above the app drawer launcher button, which image file do I need to make transparent to achieve this?
Or is it not that simple??
Many thanks
Haven't tested, but check out res/drawable-xhdpi/divider_launcher_holo.9.png. I believe 9-patches have to be recompiled before replacing them in the APK, but I could be mistaken.
EDIT: Actually, might be hotseat_scrubber_holo.9.png and hotseat_track_holo.9.png instead.
copkay said:
Haven't tested, but check out res/drawable-xhdpi/divider_launcher_holo.9.png. I believe 9-patches have to be recompiled before replacing them in the APK, but I could be mistaken.
EDIT: Actually, might be hotseat_scrubber_holo.9.png and hotseat_track_holo.9.png instead.
Click to expand...
Click to collapse
Many thanks for this.
I am bringing this thread back to life folks as I would like to perform the same edit in Jelly Bean, but I would actually like to learn how to do it.
What are .9.png's and how do I edit them and are the files mentioned above still the same in Jelly Bean??
As I said I want to learn rather than rely on others to create mods so any help or a quick tutorial in how to remove the dock divider would be much appreciated!
Again, many thanks all!
wilskywalker said:
Many thanks for this.
I am bringing this thread back to life folks as I would like to perform the same edit in Jelly Bean, but I would actually like to learn how to do it.
What are .9.png's and how do I edit them and are the files mentioned above still the same in Jelly Bean??
As I said I want to learn rather than rely on others to create mods so any help or a quick tutorial in how to remove the dock divider would be much appreciated!
Again, many thanks all!
Click to expand...
Click to collapse
.9.png's are PNG image files that android recognizes as being stretchable, and it knows where to stretch them via the black outline around the image that can only be seen when decompiled.
.9.png's can only be edited when an apk has been decompiled, not just unzipped.
After decompilation you can use draw9patch, which is included with the Android SDK, to edit the border.
However, if you're just them(e)ing the image, you don't touch the border, as it could possibly mess things up. You really only use draw9patch to create a border on a new image.
Sent from my Galaxy Nexus using Tapatalk 2

[REQUEST][THEME] Need help theming AlterROM

As the title suggests, I need help with theming my ROM. It is based on 4.67 RUU, but mostly de-sensed and using GO Launcher EX. I'm looking to theme the various Sense bits remaining (like SystemUI.apk and other Sense themed .apks) to match GO Launcher's default theme, but I suck at graphic design and am still new to theming in general.
This would end up being the default theme of AlterROM and all credits would be given where due. I'm looking to collaborate on this so that I can learn more about themeing, as well, not just get a packaged theme, if possible. You can find screenshots of what I am currently working with here. Keep in mind that it is under active development, so those images are subject to change...
If interested, please PM me or post any questions or requests for clarification here and I'll provide you with whatever you need.
Thanks!
Have you tried UOT kitchen yet? It has all kinds of theming options for systemUI (and other stuff). It doesn't really teach you how to theme, it's pretty much plug n play.
Also, I believe there are some theming guides in the broader xda forum (rather than the Evo forum). Hope any of that helps, I know it's a bit vague lol.
Sent from my PC36100 using xda premium
Tommytomatoe wrote a real nice thread about theming sense...I'd find it for ya but in on tapatalk but It's a pain
Sent from my PC36100 using XDA
You have apktool 1.4.2? b/c youll need it and m10 tools and probably optipng and tommyt's tool for linux at least thats what I use for zipaligning... Photoshop or something close to it. Tommyt's tutorial is more android 1.0 seeing as thats what he builds but yeah its basically the same... Making your own .9.png's using draw9patch... It takes a while to learn but once you get the hang of it youll be able to theme like me lol
scottspa74 said:
Have you tried UOT kitchen yet? It has all kinds of theming options for systemUI (and other stuff). It doesn't really teach you how to theme, it's pretty much plug n play.
Also, I believe there are some theming guides in the broader xda forum (rather than the Evo forum). Hope any of that helps, I know it's a bit vague lol.
Sent from my PC36100 using xda premium
Click to expand...
Click to collapse
UOT Kitchen is a little light for the amount of changes I need to make to the SystemUI.apk. I've looked into it, though, a while back.
jboyer0000 said:
Tommytomatoe wrote a real nice thread about theming sense...I'd find it for ya but in on tapatalk but It's a pain
Sent from my PC36100 using XDA
Click to expand...
Click to collapse
I've read it, but it is for theming rosie, which has been ripped out of my ROM. I've read a lot of the others in the more general forums, as well, but they are not exactly what I am looking for or they are missing something that I need.
Pneuma1985 said:
You have apktool 1.4.2? b/c youll need it and m10 tools and probably optipng and tommyt's tool for linux at least thats what I use for zipaligning... Photoshop or something close to it. Tommyt's tutorial is more android 1.0 seeing as thats what he builds but yeah its basically the same... Making your own .9.png's using draw9patch... It takes a while to learn but once you get the hang of it youll be able to theme like me lol
Click to expand...
Click to collapse
I should have all the tools that I would need (photoshop & android-utility) and have already implemented various modifications to several apk and jar files. My issue is that I can't do much in Photoshop outside of text manipulation and opacity/fill changes. Even then, I managed to successfully modify the pngs, 9-patch and xml files the tutorials I followed said I needed to and successfully recompiled the SystemUI.apk, but none of the changes actually seemed to take.
Basically, I need help from someone who can create the pngs that I need to theme the statusbar and notification bar to resemble GO Launcher, instead of Sense 1.0. I can make the .smali and xml edits myself, provided I have a complete list of the files that I need to edit, but I am likely missing a step that keeps them from showing the changes after the apk is recompiled.
Send me the images and Ill change them to what you want... Yeah what are you using apk_multitool or something? If you modify a .9 image and you recompile it and it doesnt error on the .9 image the .9 should should in your output .apk? make sure your signing your files btw...

[ROM] Stock Deodexed FI27 Customized slightly...

Ok so this is my entrance into trying to develop for android and giving back to the community. :victory:
Since this is my first rom, I left it mostly stock, with a few add ons.
Please forgive any errors, I'm a NOOB! LOL
Included are some of my favorite apps, and a few other things I forgot what they were lol.
Included apps are Titanium Backup, CPU Sleep, Notification Toggles (Adds custom buttons to status bar, negating the need for extended toggles), Root Uninstaller, Root Explorer, Cachemate cache cleaner, A few different Launchers, DX Battery Saver, Drippler ( Keep up to date on tons of stuff E4GT related), TweetLanes (my personal favorite Twitter alternative) and a Sense style clock
I would like to thank everyone that has helped me along the way. :highfive:
Timmetal6669 - Thanks bro, without your guidance, I'd be bricked, no doubt.
Sniper - Your suggestions and help with some of my scripts were a life saver
Kobridge - For your init.d tweaks and scripts
Manufan - For allowing me to pull some apps and ideas from your roms
Rujelus - For your recovery kernel (sorry that you went uncredited for so long, I didn't realize I had done that)
Venum - For bringing that to my attention so that I don't look like a complete **** lol
Agat - For your recovery kernel
Rwilco, crawj, & sextape - for the resources and base rom
IMPORTANT! : REQUIRES A CLEAN INSTALL AND REBOOT AFTER FIRST LOAD! No idea why, but nothing wanted to work on initial boot.
https://dl.dropbox.com/u/102533325/Stryke's_FI27_Customized_Stock.zip
Initial Release: FI27 Base, The Kuban Recovery, select included apps
Second Release: Changed to Agats recovery kernel for init.d support, and added kobridges tweaks
Nice....good job on your first rom....hope to see more come from this :thumbup::beer:
Sent from my SPH-D710 using Tapatalk 2
Shadow_God said:
Nice....good job on your first rom....hope to see more come from this :thumbup::beer:
Sent from my SPH-D710 using Tapatalk 2
Click to expand...
Click to collapse
I definitely plan on doing more, I just wanted to make sure I had a good base understanding, and figured a stock start was a good place
Whoaaa...this came outta nowhere...congrats man!!!!!!!!!this is awesome!!!!!
Sent from my SPH-D710 using xda app-developers app
manufan721 said:
Whoaaa...this came outta nowhere...congrats man!!!!!!!!!this is awesome!!!!!
Sent from my SPH-D710 using xda app-developers app
Click to expand...
Click to collapse
You guys are a great inspiration to step up and do this, I learned a lot. Like how many hours and headaches actually go into this lol! And mines just stock. Thank you guys for all the help and support
I'm in a 12 step program for Flashaholics, I relapsed...
Oh and expect updates I just learned how to edit png's lol
I'm in a 12 step program for Flashaholics, I relapsed...
Awesome. Been looking for something stock but with minor theming. Looking forward to it.
Sent from my SPH-D710 using xda premium
Awesome stuff bro. Working on a rom myself but I can't figure for the life of me how to theme status bar pulldown, I've tried everything so I'm about to give up lol.
xST4T1K said:
Awesome stuff bro. Working on a rom myself but I can't figure for the life of me how to theme status bar pulldown, I've tried everything so I'm about to give up lol.
Click to expand...
Click to collapse
I was there myself man, don't give up though. Seriously, being able to post my rom was spectacular. If i remember right the status bar is a framework-res edit, but dont quote me on it lol. I found that between searching the forums (a fantastic resource) and the help of some great developers, you'll get there
found this that may help http://forum.xda-developers.com/showpost.php?p=9978779&postcount=62 and you'll need the autoapktool found here http://forum.xda-developers.com/showthread.php?t=1053227
Stryke_the_Orc said:
I was there myself man, don't give up though. Seriously, being able to post my rom was spectacular. If i remember right the status bar is a framework-res edit, but dont quote me on it lol. I found that between searching the forums (a fantastic resource) and the help of some great developers, you'll get there
found this that may help http://forum.xda-developers.com/showpost.php?p=9978779&postcount=62 and you'll need the autoapktool found here http://forum.xda-developers.com/showthread.php?t=1053227
Click to expand...
Click to collapse
Nice, thanks man, I've themed my whole rom already but haven't been able to change anything related to the status bar, I thought theming the battery icons would show in the status bar but nothing changes, it's left me stumped. That's the first thread i've seen that actually explains it. Only problem I have now is decompiling, apk manager keeps throwing me errors. I think I'm gonna try for apktool instead.
xST4T1K said:
Awesome stuff bro. Working on a rom myself but I can't figure for the life of me how to theme status bar pulldown, I've tried everything so I'm about to give up lol.
Click to expand...
Click to collapse
FI 27 doesn't seem to like being themed. I think I'm gonna decompile it and try tho figure out what they added to it to make it force close when themed No doubt an xml in colors or something. But I'm gonna get to the bottom of it.
Highly appreciated Tim. I've been researching religiously the last 4 days and have drawn a blank. I'm still very new to this so I figured it was something I'm doing wrong, but I've yet to find any status bar tutorials on tw-based roms so I wasn't sure if it made a difference.
xST4T1K said:
Nice, thanks man, I've themed my whole rom already but haven't been able to change anything related to the status bar, I thought theming the battery icons would show in the status bar but nothing changes, it's left me stumped. That's the first thread i've seen that actually explains it. Only problem I have now is decompiling, apk manager keeps throwing me errors. I think I'm gonna try for apktool instead.
Click to expand...
Click to collapse
Ok i suggest if you want to play around with ROM building or theming and modding to pick up the team rejectz quick fix. Also make sure you google jdk and java and have both of those up to date to decompile and compile correctly. Also for theming i suggest having adobe fireworks and Photoshop. You can also use gimp . Parts of the status bar are in framework xmls, but most of what you theme is in system ui. The whole tw drop screen (notification menu) is in system ui. Use 7 zip or just decompile and recompile, which ever is easiest for you. I suggest playing with both as they both are handy. Also you might wanna google .9 compiler. And sdk tools for .9pngs. There is plenty in the Android forums on how to decompile and recompile along with theming. Of course as you can see we at team rejects encourage learning how to do this yourself and are willing to help if we can. My email is [email protected] if any one needs help, hit me up on gtalk.
timmetal6669 said:
Ok i suggest if you want to play around with ROM building or theming and modding to pick up the team rejectz quick fix. Also make sure you google jdk and java and have both of those up to date to decompile and compile correctly. Also for theming i suggest having adobe fireworks and Photoshop. You can also use gimp . Parts of the status bar are in framework xmls, but most of what you theme is in system ui. The whole tw drop screen (notification menu) is in system ui. Use 7 zip or just decompile and recompile, which ever is easiest for you. I suggest playing with both as they both are handy. Also you might wanna google .9 compiler. And sdk tools for .9pngs. There is plenty in the Android forums on how to decompile and recompile along with theming. Of course as you can see we at team rejects encourage learning how to do this yourself and are willing to help if we can. My email is [email protected] if any one needs help, hit me up on gtalk.
Click to expand...
Click to collapse
Only thing I don't have is the quick fix I'll check it out. I've got everything set up correct though, I can decompile and compile everything fine except systemui, it fails everytime decompiling. I'm using photoshop cs5 and paint.net to adjust the png's, and draw9patch for .9 files and it works great but I get stuck at systemui. I'm gonna check my log and see what it's giving me the trouble. I appreciate everything man, I know it's hard when people like me have questions, but I've been trying to dev for some time and have been running around in circles.

[Q] Remove Quick Settings Toggles - JB Custom ROM I'm Building

Hi there guys!
I am a new account/poster, so I apologize if this is the wrong place for this question. I read the sticky, so I would think I'm good, but feel free to enlighten me
Long story short, I'm working on making a VERY simplified custom ROM for the SGH-T999 (TMobile's Galaxy S III). This is a project for school, so the idea was to make it simple for average users: remove certain settings, remove bloatware apps, customize icons etc. For this project, I only wanted to focus on one thing to see if I could do it. That was to remove the GPS quick toggle from the notification panel and remove the "Location settings" option from Settings. Again, this was just a simple test for school, so I'm aware this doesn't completely remove GPS
I have built my ROM off of TMobile's 4.3 stock ROM using the oh-so-time-and-noob saving Android Kitchen and APK Multi Tool, both most up to date version. After reading and testing the wonderful tutorials on XDA about Systemui and Secsettings apk modification, I am having trouble removing the GPS quick toggle. It seems that with this version of Touchwiz, or Jellybean, or TMobile stock, it has become MUCH harder to edit the toggles/notification xml without editing all of them at once. The tutorials for modding this area are at least a year old, and I know that the current stock version of Touchwiz has implemented customizable toggles anyway. My goal was to remove the GPS toggle completely so the user could not have access to it to customize.
I've seriously been reading everything I can on this stuff, so I don't think I missed a post about this specific problem on the Galaxy SIII. I have been testing and re-testing for about three days now, with no results at all. Literally. My XML edits do not seem to have any effect (arrays.xml for arrangement for example). I was able to successfully remove the Location settings option, so I know my edits work in certain places. I've seen tons of people talking, but I just wanted to clarify that I'm not missing something about the way this is coded. I've been trying to trace the code path, and it seems to lead to dreaded hex IDs and Smali. Which if I have to get that deep, I'm pretty confident my professor would just tell me to forget it and mod other things.
I know people have made some pretty sweet mods for this that I could just deploy, but I want to learn to do it myself. I am a programmer after all I have a lot of experience with XML and JavaScript, just not Smali. I would really like to know if anyone else has noticed this change in toggle modification, or if I'm completely missing the ball. If any of you guys know where I might continue my search, it would be appreciated. I don't want to just make a transparent .png to replace the icon, because then it's still clickable Another workaround option I just thought of could be to set the default toggles. (Only want Wi-Fi and Drive-Mode when the ROM deploys for example). Even then, I don't know where to set those, and actually have my edits apply.
Guess this turned into a long story heh, but I wanted to give as much info as possible. Thanks again guys! Long time reader, first time poster. If I learn this stuff I'd love to help others using what I've learned. Peace!
At first Glance, I had half a mind to suggest setting up Parental Controls and use Xposed Apps to turn off Locations. But I understand your professor won't take kindly to that. :angel:
So how does one go about this ? Well, you are on right track. Here's the thing. I am a Rom developer but I do not support this device. (Long story there....) So you may want to reach out some of the Developers who do support this device if need be. But be mindful that you want someone that actually makes TouchWiz (henceforth TW) Roms, since that's what you are trying.
Here's some of my suggestions. Let's start with the basics ones. The Stock Roms are all Odexed. So in order to mod the part you need, you'd have to first De-Odex them all. I am sure you must have considered that but didn't see you mention it.
Second, especially with APK Tool, you do need the 2 APKs that are specific to TW framework. One's called TWFramework-res.apk and the other one is something to do with SystemUI. I believe its these two you may have to mod or at least keep them in right path for APK Tool.
SecSettings will remove the Location Option from Settings Menu. Quick Settings I believe would be in System UI. I doubt you'd need to go to Smali level or Services.jar. Look around the mods for Status Bar. In particular @Ticklefish tutorials are pretty good ones. Go through them if not done so already.
Lol, I would agree. Though he is pretty chill, so maybe he would appreciate the humor behind it.
Yeah sorry I forgot to mention, I did deodex the ROM before modding. Learned that one the hard way. Thank you very much for replying. I already had the frameworks and systemui installed as well, but I took a look at the @Ticklefish tutorials. It didn't help me directly but it led me to somewhere great. Right here: http://forum.xda-developers.com/showthread.php?t=2594659
Turns out we were kind of in the wrong place. The array.xml that I needed to edit for default toggles upon deployment was actually in SecSettingsProvider and not SystemUI. I have a feeling that the array inside SystemUI worked a while back, but new stock updates have left dead code. I'm starting to see that everywhere in various edits.
The above tutorial adds toggles, but I worked backwards and used it remove individual toggles as well. The settings I was looking for were located in settings.db in the /data/data/android.com.... blah blah blah (you can see it on the great tutorial above). So after modifying that and testing, it worked! My brain then figured there has to be something telling settings.db to be configured that way, and that was where I found arrays.xml in secsettingsprovider.apk\res\values.
This gives a lot of control, and allows you to add/remove individual toggles you want as default in the ROM. Plus there are tons of Boolean defaults as well you can set in the same folder.
Not sure if this applies to older versions of Android or even Samsung, but if the other tutorials don't prove tried and true, THIS is the way to go.
Thanks again mate, I really appreciate the links. Hope this helps others too!
Glad it all worked out. Do be mindful that the Array in SystemUI is true AOSP file. Samsung's edits have left it unusable on Touchwiz.
Perseus71 said:
Glad it all worked out. Do be mindful that the Array in SystemUI is true AOSP file. Samsung's edits have left it unusable on Touchwiz.
Click to expand...
Click to collapse
Ah got it. That makes perfect sense. So not "dead" code per-se but Touchwiz is overwriting AOSP code with their own. So the tactics discussed above only work with Samsung related products. Cool I'm learning! heh

Categories

Resources