[Q] harder questions on theming - Droid 2 Themes and Apps

Okay, so i've been playing around with theming for 2 months and i've just about figured it all out, except for one thing.... the VZW banner on the lock screen for the D2 doesnt seem to give two ****s what i put in any of the keyguard .xmls that is supposed to control the layout and keeps on just being white...
im running fission 2.5.7 and i've tried everything that is supposed to do the lockscreen on the xml side (as far as i know) including the colors.xml in the values folder(more on this issue later)... so i started poking around .jar files in the framework but unfortunately i have little understanding still of .smali files because im still on the baby steps side of coding beyond the beginners html stuff i learned in the 6th grade ('99) and i could use some help/pointers toward i should be looking for.
i noticed mentions of wakelock (or something like it, its 2am and im mentally fried right now) in one of the smali files in a telephony folder in framework.jar but im just not sure if it is even close to the right thing because it may just be the phone doing something to the cdma radio on wakeup....
I'm open to try any suggestion you guys are willing to throw at me because finishing this project is important to me.
every guide i have been able to find so far just mentions line 7 and 8 of the .xmls in layout, if you find another idea besides that already posted send those too...
ALSO, when i edit colors.xml and then compile and push framework-res.apk to the phone i get 2 results depending on what i do
1) move the file that values folders gets turned into into the original framework-res.apk and get a boot look
2) use the newly compiled framework-res.apk (in whole) and lose the functionality of lockscreen selection app...
any idea on how to make this work would also be awesome
may end up having to work with the devs in the chatroom on this issue (im sure) but its also somethign i want to do so i can change the text colors of sound on/off (along with a couple other default text colors)

Related

[Q] Samsung 9 Patches

Has anyone else noticed all of the .9 files in Samsung's APKs that are _not_ valid 9patch images? box_launcher_bottom.9 or box_launcher_top_normal.9 for example.
If you try to replace them, they stop working as 9patches, causing busted images in the UI. If you put the _exact_ same file back in, they are fine.
Anyone know what might be causing this? I am going to create proper 9patch files for a few and see if those work...
BitVenom said:
Has anyone else noticed all of the .9 files in Samsung's APKs that are _not_ valid 9patch images? box_launcher_bottom.9 or box_launcher_top_normal.9 for example.
If you try to replace them, they stop working as 9patches, causing busted images in the UI. If you put the _exact_ same file back in, they are fine.
Anyone know what might be causing this? I am going to create proper 9patch files for a few and see if those work...
Click to expand...
Click to collapse
I havent had a problem replacing them, its editing the image that gives me trouble... I have to use a totally different image..
I am not sure what you mean? Replacing? As in, with something similar? And you have an image issue... as in you want an entirely different style of skin? What have you replaced them with that worked?
If I replace the .9.png with an image of similar size it is fine... If I take the .9.png and lets say, make it more opaque/transparent or change the rgb ratios, then the image breaks and shows up funny...
junkdruggler said:
If I replace the .9.png with an image of similar size it is fine... If I take the .9.png and lets say, make it more opaque/transparent or change the rgb ratios, then the image breaks and shows up funny...
Click to expand...
Click to collapse
Still confused. Do you create your own .9.png's from scratch? Do you just use a regular png of the same size? I've been reading up on these .9's and I know that I can now make some morphs but it is going to be a lot more work than I thought unless there is some trick you know to create them.
yeah ive just used regular pngs... whatever I could find lying around my 16gb of theming stuff on my sdcard...
Not everything just works, Ive found problems along the way... I use ninja morph to test out my stuff before flashing with MM so I have less trouble finding out what doesnt work...
Making .9 files is not hard, at all. But then again I do Android dev as part of my job I am just curious if anyone knows how Samsung is able to use _bad_ .9 files (no marked-up edges) and still have them show up correctly. No big deal, I can figure it out myself I guess.
BitVenom said:
Making .9 files is not hard, at all. But then again I do Android dev as part of my job I am just curious if anyone knows how Samsung is able to use _bad_ .9 files (no marked-up edges) and still have them show up correctly. No big deal, I can figure it out myself I guess.
Click to expand...
Click to collapse
Could you explain how to make them? I tried using regular png's with no luck. The file names don't match so they won't get replaced properly. I can't edit existing ones and make them work. I guess I have to make my own from scratch but I don't really get how. If I can figure this out I'll be theming like crazy. (which may not be a good thing for all the other things I need to get done)
There are a few places online that explain them. I will let you google for that info/guides (I am at work right now). I will say however that there's a tool in the SDK (if you build it) called draw9patch that creates a little tool to show you how they look stretched different ways, and lets you edit them, very handy.
As for the 'rules'. It's easy. The left & top edges of a .9 file (1 pixel) define where the image will stretch. If you place a black dot in the left-x, center-y pixel of the image, it will stretch that row if the image needs to be bigger. The rest of the image will not be stretched. The same goes for the top. You can place extra pixels to expand the area stretched, or even make more than 1 area that stretches (my notification bar skin will show how that's done).
The right/bottom edges use the same mechanism (1 pixel row/column) but they define a box on the image that _content_ inside the image will fit into. You can see this if you go find some 'edit box' skins. The black dots on the bottom/right are placed where the edit box's internals are relative. Unlike left/top, you _can't_ have more than 1 section per side.
Using draw9patch it is _very_ easy to play with. If I get some time I will upload some examples, maybe with my next morph (an extension of the diamond-plated steel look I did for the launcher in some other threads).
BitVenom said:
Making .9 files is not hard, at all. But then again I do Android dev as part of my job I am just curious if anyone knows how Samsung is able to use _bad_ .9 files (no marked-up edges) and still have them show up correctly. No big deal, I can figure it out myself I guess.
Click to expand...
Click to collapse
I'm not really sure what your getting at by "_bad_ .9" but if an image is sized correctly, it doesn't need guidelines.
Perfect example is this image:
which has no guidelines whatsoever
maybe you could upload an example?
Yeah I've just renamed regular .png files with no prob 90 percent of the time..
Sent from my SGH-T959 using XDA App
one thing you could also try doing is using apktool and decompiling the apk with the 9.png's you are trying to replace. apktool decodes them and shows the patches.
Well I tried using the draw9 tool. Very simple and easy to see what is happening. I modified a bunch of the Mms .9.pngs (on a mac?) with photoshop, saved, opened with draw9 to add the stretching, saved them and made a morph. When applied it only changed some of my images and the ones that changed won't stretch properly so the text extends outside the image.
I ONLY replaced images but something got screwed up. My text messages started showing coming from the wrong people, and I would reply to one person and the text would go to someone else. Not good. Tried to use the revert I had created and it fixed the graphics but not the other sending/receiving problem. Lucky I had a backup so I'm flashing back to that now.
I'm sure I'm making some stupid error, oh well I'll figure it out eventually.
Gahhhh!!!
Well, after digging around, and not being able to determine why my own changes to .9 files were causing issues, I found it: If I use _apktool_, I get a proper .9.png, and it looks great. If I just unzip the apk, I get the old png, still valid, but without it's outer-edges that are used for .9 markup. What-The-F? Really. So does the damned thing have 2 versions of the file in it? A PNG is compressed, it shouldn't be possible to create a version minus the outline without tons of trouble. Where is that data being hidden? If I put mine in place, will it just blow it all up?
I am going to give it a shot, see what happens.
Putting the 'proper' .9 that apktool created back into the morph and loading it results in something that is _better_, but still rather broken. Somehow the 'patches' from the .9 file are being applied over the .9 itself. There must be something about .apk that encoded extra data in a side-channel of some sort. I wonder if anyone here knows who to ask? I am a very capable programmer, and happy to write/transplant code to get a reliable .9 path for odd .apk variants (as I understand Samsung's is new/custom)... ?
Info I just found: http://code.google.com/p/android-apktool/issues/detail?id=2
So apktool will decode from binary to source. Now I just need to get a path back to binary, and I think it'll fly...
Hrm, I found the Froyo code that de-serializes a PNG and checks for 9patch, as well as the code to save one back out with 9patch info. I need to determine why the 'source' 9patch minus hidden binary data is not acceptable to the Vibrant. It should be, all of this code reinforces that. I feel like I am _suuuuuuper_ close to having this work.
Well, I need to write a tool (maybe after next week) to do the heavy lifting... but hand pushing the 'custom' PNG chunk from a valid .9 onto a processed one results in a valid .9. You have to know the PNG format (and be handy with a Hex editor), and since you are stealing data from another image, hopefully didn't edit the size/split areas too much. I know google's format too, so hand-editing the custom chunk data to move around the black-bars (virtually) isn't too bad. But again, a tool that just takes .9.pngs with visible borders and encodes them (and removes the _massive_ waste of RAM that is the Photoshop chunks.. wow), and is able to do the opposite will likely help all theme modders out there. I will update the head of this post once the tool is complete.
As an aside, even after getting a working file (my folders now have black, not grey backgrounds) - I still have a grey box in the center... and that is _not_ in the image. Very, very odd. I will track that down too... probably just some layout courtesy of Samsung.
Noon Sunday - Ah, got the grey-box too. I _think_ a simple 'encode 9patch' tool already exists, will test the process and report back. But I have fully custom graphics now that look excellent.
Just added: https://code.google.com/p/android-apktool/issues/detail?id=92
Also I'll add wiki page about 9patch images, cause many people don't understand them and they don't know, what to do. They're WTFing, as you did above ;-)
Thanks!
Brut sir Being a long time hobby-hacker... the chase was as valuable for me as the catch... but I definitely appreciate somebody else making it work first
9Patches are easy now, and one of the most powerful elements that Android UI utilizes too!
Ok, I think you understand 9patch images already, but I wrote an art with explanation:
https://code.google.com/p/android-apktool/wiki/9PatchImages
Brut.all said:
Ok, I think you understand 9patch images already, but I wrote an art with explanation:
https://code.google.com/p/android-apktool/wiki/9PatchImages
Click to expand...
Click to collapse
Thanks for that. I'm going to be giving these 9patches another try.

Guide on how to correct the framework-res.apk so you can cook ICONs

OK folks,
Have a look at this guide that I created for editing the framework-res.apk so that you can then go to the UOT Kitchen and cook up your own ICONS and Batteries.
It is a long read and most folks can probably figure it out.
I have used this to create my own Battery and Status bar icons.
Regards,
Alperin1
I have converted your document to a PDF (some folks don't use Word).
Download here
If you want me to remove this I will.
thanks very helpful guide, but too involved for me. I will either use some one else theme, or use 7zip open archive and change PNG's trick.
Hopefully someone can upload an edited framework-res, for every DJ_Steve update that we all can share for UOT.. hint...hint...
thanks again, I may give this a try when I have time, hopefully I wont need to though.
chrisrotolo said:
thanks very helpful guide, but too involved for me. I will either use some one else theme, or use 7zip open archive and change PNG's trick.
Hopefully someone can upload an edited framework-res, for every DJ_Steve update that we all can share for UOT.. hint...hint...
thanks again, I may give this a try when I have time, hopefully I wont need to though.
Click to expand...
Click to collapse
Gopu already uploaded an edited framework-res..here it is
http://www.megaupload.com/?d=4TI7W0E1
ramtix said:
Gopu already uploaded an edited framework-res..here it is
http://www.megaupload.com/?d=4TI7W0E1
Click to expand...
Click to collapse
Ramtix, i knew that the framework was out thre for the others to use.
I guess the guide is for the folks that want to do all the work and learn a lttile bit about how the Framework is edited.
It took me a long time to figure out how to edit the 9.png files and compile them and just wanted to help others to do the same.
I tried that framework and failed to cook everytime
What is the use of those .9 pngs anyways?
chrisrotolo said:
I tried that framework and failed to cook everytime
What is the use of those .9 pngs anyways?
Click to expand...
Click to collapse
OK, what are the 9.pngs used for or why are they needed.
Stretchable Patches
If you have an image that you may need to stretch you then converting it to a 9.png will allow it to stretch. Also if you need put something in the PNG file, by converting it to a 9.png you can tell it where the text/data/information is allowed in the png file.
When you convert to a PNG you need to need to put a single pixel on the left side of the image and the top of the image. This pixel is not part of the image but in a frame around the image the frame also is just one pixel all the way around the image.
When you put the pixel on the top of the image you are telling the system where the image can be enlarged. Draw and line straight down from you pixel and this is where the image will stretch from. This just allows the image to grow to the left and to the right. Think of it as a square when you put the dot at the top of the square you can them change the square and stretch it left and right to make the square wider, so that it is now a rectangle. This all comes in handy when you rotate your device from landscape to portrait and back again.
Now when you put the pixel on the left side of the image, again in the frame that is around the PNG file, you are telling the system where it can stretch the image, this time you can pull the image up or down and so the height will change. Again image a square, you put the dot on the left side of the this determines at what point the square is allowed to stretch.
Only the lines with the dots on them will change, the rest of the square will retain the original shape and the original image. Most of the time this is done to an image that is only one color so that you are not messing with an image.
Here is the best example I can give of the DOT at the top of the 9.PNG or the left side.
Take two pieces of blank paper that you have and set one on the table and then set the second piece of paper in top of the first with about one inch of the right side of the first (bottom) piece of paper showing. The point where the top piece of paper ends and the bottom piece of paper starts is that DOT. Now slide the bottom piece of paper to the right and keep the top piece of paper still. Hope this all make sense
Content Area
Now lets look at the right side and the bottom of the PNG file. These two side determine where in the PNG file that text or other stuff can overlay or be imposed into the PNG file.
If I have an PNG that is a button and it is 50 x 50 pixels and I want the text for the button to be centered left to right, I would focus on the bottom of the 9.PNG image. I want the text to be able to use most of the pace from left to right but i do not want it to use the left 5 pixels at either end, I would create a line at the bottom of the 9.PNG that begins 6 pixels from the left and ends 6 pixels from the right. Why 6 pixels you are asking, well I have a one pixel from around the image and I needed to take that into account.
The same thing is used to center the text on the button from the top and bottom. Only this time you would use the right side of the image and fill in all pixels except for the 6 from the top and the 6 from the bottom.
Now when the button is stretched, you can use more of the space, but you will never be able to use the last 5 pixel on the top, bottom, left or right.
WOW, that was a long write up.
Enjoy,
Alperin1.
BTW, this is not unique to the Streak, it is used for the Android OS and maybe more.
alperin1 said:
Ramtix, i knew that the framework was out thre for the others to use.
I guess the guide is for the folks that want to do all the work and learn a lttile bit about how the Framework is edited.
It took me a long time to figure out how to edit the 9.png files and compile them and just wanted to help others to do the same.
Click to expand...
Click to collapse
Alperin, dont get me wrong, what you did is awesome, useful and will be appreciated for all other users in the forum especially for future bulids.You did a great effort putting it in words and composing that. thumbs up!
ramtix said:
Alperin, dont get me wrong, what you did is awesome, useful and will be appreciated for all other users in the forum especially for future bulids.You did a great effort putting it in words and composing that. thumbs up!
Click to expand...
Click to collapse
All is good. I did not intend for my response to be a flamer at you.
I think some folks just want to have some fun and try to make things work and a little help here and there can go a long way.
Thanks
Great explanation of .9.png's
Finally got the edited framework to cook
Hopefully this helps with more themes for Streak.
Thank you all around
Tried making my own framework.apk but failed big time, appreciate you uploading your work for me to use. Will keep the guide and continue to play with it, would like to say that I beat the software, not that the software beat me.
Keep hacking away at it.
Do you know where you are beating the software into submission. (where are you stuck?)
When it's time to complie is where I fail
alperin1 said:
Keep hacking away at it.
Do you know where you are beating the software into submission. (where are you stuck?)
Click to expand...
Click to collapse
alperin1, I will walk you through my Eclipse phase and maybe you can tell where all goes wrong.....
1. Make edits to .9 files like a champ if you don't mind me saying so...
2. Open Eclipse and go to File/new/android project and nothing, import LunarLander files and make sure settings are on Android 2.2
3. Create and now my copy of LunarLander is permanently updated to my edited .9 files (so assume at this point all is good to go).
4. At Export Signed Application Package is where I am having my problems, go throught the steps receive confirmation my file is G2G and when I move them to my Framework file all the edits are gone, like I did nothing to them.
5. Have preformed #4 multiple times and same result every time, everything moves but my edits are stripped out.
6. Figured maybe it is magic and edits will reappear when I cook my file, well no luck, get same exact error report as when I first tried to cook me some Icons on UOT.
Any ideas on what is causing my updated .9 files to loose the edits when I move them from LunarLander to Framework (Yes I do accept the overwrites when prompted).
Before you do the last step in Eclipse, drag one of the png files to your desktop and view it.
I am at work. I will play with this when I am home.
Sent from my Dell Streak using XDA App
vanemburghj said:
alperin1, I will walk you through my Eclipse phase and maybe you can tell where all goes wrong.....
Any ideas on what is causing my updated .9 files to loose the edits when I move them from LunarLander to Framework (Yes I do accept the overwrites when prompted).
Click to expand...
Click to collapse
This is very interesting. When I export my package from Eclipse and then pull the images they do not show the dots and the bars just like you are seeing. So, I have to say this part may not be where your are running into problems.
Is it possible for you to post the error text? Put it into a zipped file. I will see what I can do. This is kinda new to me so I will do what I can for you.
So you are in Eclipse and you have lunarlander, you then put all your edit 9.PNG files into the folder. Next your export it.
After you have created the new lunarlander.apk, you are going into it and extracting the 9.png files you need. You are then placing these file in the same location that you pulled them from in the framework-res.apk. right? Then you are uploading this to the UOT kitchen.
Will do
But will have to wait till I get home from work.
alperin1
Here is my LunarLaner.apk, none of the edits survived creation of .apk, but they are in my LunarLander sample as your guide shows them to be. So it is when I make the .apk that all fails. Have attached my Pre-export LunarLander so you can verify I made the changes to .9 files.
Window 7 Ultimate 64 bit
Norton Anti Virus
Plus other software
Any and all ideas are welcome.
vanemburghj said:
Here is my LunarLaner.apk, none of the edits survived creation of .apk, but they are in my LunarLander sample as your guide shows them to be. So it is when I make the .apk that all fails. Have attached my Pre-export LunarLander so you can verify I made the changes to .9 files.
.
Click to expand...
Click to collapse
Well, I have taken the 9.PNG files that you have provided and I put them into my Framework-res.apk file and I was able to cook up some goodness for myself at the kitchen.
As you are stating and you are correct, the frame around the 9.png is not showing after step number 4, but the information is there, i just do not yet know how to view it.
I think the problem may be that the same 9.png files are in two locations in the framework-res.apk. Can you try to cook a new set of ICONs or anything for that matter and when you get the errors, put them in a zipped text file and post it here for me.
Oh and what ROM are you using? DJ Steve 1.9? If so, you should have many more images to edit that what you have provided to me.
Cooked my own framework!!!
alperin1, Thank you, think I needed confirmation that once exported via eclipse edits would disappear, plus I took my time and made sure I did the wallpaper steps exact. Cooked my own framework, I am getting there, am sure it is one very small drop in a very big ocean of Android development that I have learned with your expert help I do appreciate it.
vanemburghj said:
alperin1, Thank you, think I needed confirmation that once exported via eclipse edits would disappear, plus I took my time and made sure I did the wallpaper steps exact. Cooked my own framework, I am getting there, am sure it is one very small drop in a very big ocean of Android development that I have learned with your expert help I do appreciate it.
Click to expand...
Click to collapse
Grasshopper.you are doing well. You have made my day.
Sent from my Dell Streak using XDA App

gray background dialer

Hello all, I would like to ask a question on dialer streakdroid 1.9. are
managed to make my Contacts.apk transparent by simply adding
theme.wallpaper styles.xml in the background of my dialer but continues to be increasingly
gray. how can I do to make it transparent?. thanks
custom dialer background
Ive been searching everywhere building and testing contacts.apk, Can someone with some more code knowledge have a peek at this please?
Ive dug through all the .xml's, the Manifest .xml, the .smali (even though I dont understand very much at all), there are only a few .png's the rest are .9.png, so Im sure the grey comes from code. in colors .xml there are a couple which match this dark gray perfectly, I changed those to black as well as styles Theme to Theme.Black, and Theme.Wallpaper(which will change the other 3 backgrounds but not dialer), ive tried changing background only in styles, no luck.
I saw on Dell website where it says Streak has Customized Dialer, which obviously we know, but I think ours is a unique situation
chrisrotolo said:
Ive been searching everywhere building and testing contacts.apk, Can someone with some more code knowledge have a peek at this please?
Ive dug through all the .xml's, the Manifest .xml, the .smali (even though I dont understand very much at all), there are only a few .png's the rest are .9.png, so Im sure the grey comes from code. in colors .xml there are a couple which match this dark gray perfectly, I changed those to black as well as styles Theme to Theme.Black, and Theme.Wallpaper(which will change the other 3 backgrounds but not dialer), ive tried changing background only in styles, no luck.
I saw on Dell website where it says Streak has Customized Dialer, which obviously we know, but I think ours is a unique situation
Click to expand...
Click to collapse
"Customized" is not a word I'd choose to use when describing the horrible dialer. Hope someday we can improve it. I really think the dialer is the worst part of the UI.
if I find it I will gladly make a guide to theme it.
I may even send Dell developer an Email... oh yeah too late not supported..
chrisrotolo said:
if I find it I will gladly make a guide to theme it.
I may even send Dell developer an Email... oh yeah too late not supported..
Click to expand...
Click to collapse
+1
I think the EOL is only USA. But I don't think the dell dev team cares too much about us
Brainstorming: Reference for anyone else trying to find this..
the dialer background is not a .png, most images are .9's I pretty sure the background is not a .9.png. There is only one .png close to the color and Ive already tried changing that one.
It could be a color in color.xml, they could have coded it as android:color, but if they did that it would likely be a solid color such as black or transparent, and would have to rely on framework-res. More than likely they would have made their own color in colors.xml, since there is only a dozen or so, at least 2 of which are almost identical greys, I have tried changing these colors to black with no luck.
Ive tried changing almost every .xml refernce I could find to a drawable window/background, etc. to android:color"black" , Theme.Black or 000000,
It could be in .smali, Is where I will dig next, I have tried checking a few of the codes I found in there, they seem to be based on a deep purple?
this is just reference use to help others who may search, wish me luck!!
spelling error found DialtactsActivity.smali line 205 says: const-string v3, "Dailtacts" ,yeah wonder if this why dialtacts theme doesnt theme completly.
some progress!
I fixed the spelling mistake in DialtactsActivity.smali, though i dont /think/ this is what we see. I did change call_background.xml and secondary_call background.xml all parameters to android:color/black, I will keep experimenting, funny how in vertical only the right side of keypad is black,
Once we find the right string , we should then be able to create a custom style instead of just a solid color and use a custom background.png
edit: FOUND IT!, cant post screenie, out right now, should release something later and info. Sit tight everyone.
found it
right where its "should" be, contacts\res\layout-long-finger and res\layout-long-land-finger. the first is portrait, second is landscape. the file for both is twelve_key_dialer.xml. The first line:
LinearLayout androidrientation="vertical" android:id="@id/top" android:background="#ff000000"
just change the android:background="ffRRGGBB" to whatever 6 digit RGB/hex value you desire.
working on this now to call out a custom.png will likely get scaled like cr4p, but will give it a go.
If you dont have any .9.png errors decompiling, then you can recompile and flash it straight away.
If you use my phone&contacts theme, it wont compile because some of my .9.pngs must not be patched. So use stock to change, then after compiling extract the new .apk. If youre using my theme or whatever, then change my contacts.apk to contacts.zip, open my contacts.zip as an archive with 7zip, copy the 2 twelve_key_dialer.xml's, and close. Then in your stock framework where you changed the .xml's go to resources.arsc and right click use 7zip to add to archive... browse and select your contacts.zip with new .xml's. Its important that archive method is .zip and compression must be set to store. make sure update mode is: add and replace files. Then rename back to contacts.apk and place in your update.zip and flash!
I plan on making a guide and probably a stock framework with a custom.png for everyone to use.

Modify Settings menu

OK... so I'm running this Froyo Rom and I want to remove a couple of options from my/the settings menu (it's a bit cluttered for my tastes).
I think that I remember that there was just such a way to modify a rom so that it can show less settings options, but I don't seem to find it. If anyone can help on this front it would be really appreciated...
(In two words can I modify the "settings .apk" so that it shows less?)
Thanks for your attention.
Stevethegreat said:
OK... so I'm running this Froyo Rom and I want to remove a couple of options from my/the settings menu (it's a bit cluttered for my tastes).
I think that I remember that there was just such a way to modify a rom so that it can show less settings options, but I don't seem to find it. If anyone can help on this front it would be really appreciated...
(In two words can I modify the "settings .apk" so that it shows less?)
Thanks for your attention.
Click to expand...
Click to collapse
Of course you can, but you run a very real risk of breaking your rom, you would have to decompile the apk and poke around in the xml and smali files to find the option you wanted to remove. you would also probably have to make some adjustments in your framework.apk but like i said you run a very real risk of breaking the rom you are using.
shreddintyres said:
Of course you can, but you run a very real risk of breaking your rom, you would have to decompile the apk and poke around in the xml and smali files to find the option you wanted to remove. you would also probably have to make some adjustments in your framework.apk but like i said you run a very real risk of breaking the rom you are using.
Click to expand...
Click to collapse
Yeah, I know, but I'm a total noob to those.
I did find this: http://forums.androidcentral.com/op...-how-edit-settings-apk-solved.html#post905109 but decompiling throws me an error.
Even when I put the framework-res file in the right directory apart from taking ages to decompile it still throws an error towards the end of the process (I've lost about a day trying to decomile the settings.apk but it was to no avail as -in the end- it threw an error again).
In fact that must be quite easy for someone with experience in this if I could post (to him) my settings.apk and framework.apk I may have had results in a few minutes (instead of having to learn sth from scracth in my limited time). But I guess it's a bit hard to find someone around here who would voluneer, no?
Anyhow thanks for your reply .
edit: OK I was able to clear out the errors. So I decompiled, made the appropiate changes and then recompiled (as per the instructions), but all I got was an apk half its original size which would FC whenever I was trying to run it (upon placing it on the system/app folder and rebooting).
What makes things even weirder is that merely the act of decompiling are recompiling (the apk) without making any changes at all rendered the -new- apk useless. So it seems recompiling in general ruins the apk -period- (no matter whether I've made changes or not). That is very troubling indeed... like I said I am a noob at these, any help at all would had been greatly appreciated...
When you placed it in the system/app folder, did you set permissions?
It is not as easy as decompiling the settings.apk picking out what you don't want and then recompiling it. Think of it as a web. The Settings.apk uses bits and pieces from Framework-res.apk, services.jar, androidpolicy.jar,...
We understand that you are a self-proclaimed noob, but you have to realize that it just isn't that simple to just delete something that you don't use. I mean, just because YOU don't use it, your ROM probably does. Are you always in the Settings page anyways? I doubt it.
It is good though that you took the initiative to somewhat learn how to de/recompile apks as that is a fantastic basis to start from. You can also learn smali and baksmali to modify apps as well.
Here is a good thread about theming and using APKtool to change things in an apk (such as /framework/framework-res.apk/res/drawable-hdpi where you can change the icons images for custom icons---but you can also do this by installingADWex or LPP and an icon pack).
Long story short, no need to change your settings.apk as it will bork your ROM and your next thread will be, "I think I bricked my phone...Halp!!!"
To clear some things up: I regard myself an enthusiast user. That is to say that I have considerable experience with modding my devices, what I am a "noob" at is actually creating or reverse engineering the code *which* mods my devices (I have little experience with C but that's about it). So do not be worried I am not going to brick my device and if I do I would know how to "debrick" it ( as I have done numerous times to my devices)...
With that out of the way I have to say that I want to modify my settings APk not for aesthetic but for practical purposes. See I have written a basic script on tasker that doesn't play well with froyos settings.aPk (but it does in ICS or GB), I've tried to rewrite the script but i found a dead end which was what lead me to wish to modify the settings APk....
All I wanna do is -basically- to hide some options not actually *delete* them (i am aware what havoc that may cause...). So if there is any advice relevant to my case I would welcome it very much...

Getting rid of the ripple effect

Hey! I cant be the only one who can't stand the ripple effect introduced in Android 5 (though I asked my friends and they don't find this effect that disturbing).
This is what I mean: killem.al/ripple.mp4 - it also shows when you tao on an item in settings or click the back arrow ...
Honestly, the first time I saw it I thought I had enabled something in developer options or accesibility settings by mistake!
Actually what makes this really annoying is that the effect can not be disabled globally (not even in a theme)!
So I spent few days diving into Android source code and build process (that's how annoying this effect is to me). In the end it was enough to just find the right "draw" function and replace it with simple "return true" to make it easier I prepared step-by-step instructions how to do this in smali bytecode so there is no need to recompile framework.jar: github.com/luv/android5_noripple
Unfortunatelly it's not enough to just replace something inside framework.jar in android6 anymore and it's actually easier to just recompile the whole OS so I also prepared a guide how to recompile Cyanogenmod13 with the patch: github.com/luv/android5_noripple/blob/master/ANDROID6_README.md
DISCLAIMER: I have tested this only on cm12 (and cm13) and it's very much possible messing with framework.jar directly will make your device get stuck at boot (happened to me several times!).
eh?

Categories

Resources