Questions about pushing framework - Samsung Galaxy Nexus

I'm far from a novice when it comes to this stuff, but for some reason I still can't seem to push any modded framework back to my phone. Maybe some of the talented themers that mod multiple frameworks for different ROMS can help.
My method thus far:
Decompile framework with apktool 1.4.2 (1.4.3 gives errors in public.xml and after researching is supposedly a bug in the apktool version)
-Copy projects folder and framework-res.apk to apkmultitool
-recompile with changes using apktool 1.4.3 in ApkMultiTool
-no errors so far in either decompile or compile.
-rename unsigned framework to framework-res.apk
-adb push ./"framework-res.apk" /system/framework
-changes are visible in framework, shortly before apps start force closing like mad.
Questions:
-Do i need to push framework over adb from CWM with /system mounted, or can i do it from within a booted OS?
-I only have one framework installed to C:/, but it's for a slightly older build (AOKP b23) - could that be the culprit?
-How would i go about overwriting an installed framework for when i update builds, so it's always using the current framework?
Thanks guys.

This sounds bad but did you actually install the framework you were modifying? I had the same issues with framework editing with ICS. My lockscreen would go all over the place.
Put the framework-res into the "Place-here-for-modifying" folder and type this command in CMD
java -jar other/apktool.jar if place-apk-here-for-modding/framework-res.apk
Click to expand...
Click to collapse
I have a batchfile that does it for me automatically. Try that. If you've installed the framework already then I'm baffled by this.
EDIT: Saw the whole post and it seems the current installed framework WILL be the culprit. Any older version of a framework (especially AOKP) will screw up. You just need to use the batch file I'm using to keep on top of it. I install the framework everytime I edit a framework. I'm a little OCD like that.
If you need the batch file, PM me.
artvandelay440 said:
I'm far from a novice when it comes to this stuff, but for some reason I still can't seem to push any modded framework back to my phone. Maybe some of the talented themers that mod multiple frameworks for different ROMS can help.
My method thus far:
Decompile framework with apktool 1.4.2 (1.4.3 gives errors in public.xml and after researching is supposedly a bug in the apktool version)
-Copy projects folder and framework-res.apk to apkmultitool
-recompile with changes using apktool 1.4.3 in ApkMultiTool
-no errors so far in either decompile or compile.
-rename unsigned framework to framework-res.apk
-adb push ./"framework-res.apk" /system/framework
-changes are visible in framework, shortly before apps start force closing like mad.
Questions:
-Do i need to push framework over adb from CWM with /system mounted, or can i do it from within a booted OS?
-I only have one framework installed to C:/, but it's for a slightly older build (AOKP b23) - could that be the culprit?
-How would i go about overwriting an installed framework for when i update builds, so it's always using the current framework?
Thanks guys.
Click to expand...
Click to collapse

I don't think it's good to push framework while the phone is in use. I always push system stuff while in recovery. That way the 'android' portion of the phone isn't running and you can replace what you need to.

I haven't tried replacing the framework for Galaxy Nexus but for the SGS2, I usually do a sync and reboot immediately after pushing the file:
Code:
$ adb push framework-res.apk /sdcard/framework-res.apk
$ adb shell
# mount -o remount,rw /system
# sync
# cat /sdcard/framework-res.apk > /system/framework/framework-res.apk
# sync
# reboot
It hasn't failed once for me.

I've managed to get ApkMultiTool updated to decompile and compile without any errors now, eliminating the need to use a different program. However, now when i push modded framework to the phone, it simply hangs at the animation on boot. I made sure i only had b25 framework installed this time (thanks Nitroz) but the darn thing still won't boot. grrrrr.
-Decompile/Compile with Apk multitool using apktool 1.4.3 and only edit 2 .png images.
-rename unsignedframework-res.apk to framework-res.apk
-adb reboot recovery
-mount /system
-adb push ./"framework-res.apk" /system/framework
-hangs up at boot animation.
-FML
I even tried not using apkmultitool at all and just using console commands with apktool itself and still got the exact same result.
Really appreciate the help so far, and if everyone is out of ideas, that's ok.

Related

framkework

Hey guys, I wanted to modify the framework in cyanogenmod 7. What I did was se this command in terminal:
su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
rm /system/app/SystemUI.apk
so as you can see, i deleted the framework and after that i couldnt do anything in terminal. I turn off the phone and then i usb mounted the phone to adb push the moddified systemui.apk, i was able to push the apk, but when i restarted the phone, there was no framework.. any ideas as to why that is.. maybe the apk file is corrupted?
Its named signedsystemui.apk! Did you push it with the right name?
Sent from my......ummm...let me get back at'chya!
I don't usually delete things before pushing new file and I don't normally recommend signing system/apps.
This is what I would do. Keep in mind, your mod (whatever you may have done with it) could simply be a little goofed up.
Code:
adb remount
adb shell
stop
cp system/app/SystemUI.apk /system/app/SystemUI.bak
adb push <path to>/signedSystemUI.apk /system/app/SystemUi.apk
start
exit
In the above, <path to> refers to the location of your modified aoj. For me, it would normally be "Users/tommytomatoe/Mod/app.apk". What I do is drag and drop the apk into the terminal after typing "adb push".
If it boots up after issuing adb shell start, then you're golden! If not, then do this. Keep in mind, if you're in splash screen you will want to reboot into recovery first and mount system using the options in the menu. If you're in boot loop with bootanimation, go ahead and issue these commands:
Code:
adb remount
adb shell
stop
mv system/app/SystemUI.bak /system/app/SystemUI.apk
start
exit
Now, you will have original apk and it should boot up. Go back to ground zero and remodify your apk and make sure you've taken correct steps.
All i did was change some pngs. I did sign the apk... maybe thats why it didnt work..When changing pngs to the systemui.apk, do i also have to modify the framework-res.apk?
~CR7~ said:
All i did was change some pngs. I did sign the apk... maybe thats why it didnt work..When changing pngs to the systemui.apk, do i also have to modify the framework-res.apk?
Click to expand...
Click to collapse
It appears the newer gb stuff has elements in framework res as well as system ui. It wont hurt to change both if same files exist in both. Tjats what I think.
And also, don't sign system apk. All the system apk prefer to have same signature. Signing one would result in having to sign all in most cases...
Sent from my PC36100 using XDA Premium App

[Q] Removing the gprsone icon from NilsP 2.1/3.0 BusSense

I've tried my hardest on my own, but I cannot seem to decompile and compile the systemui.apk properly without throwing brut errors. I've used APK manager and apktool, and both give me errors about the dependencies I'm trying to use. For reference, I'm using NilsP's last release of 2.1/3.0 business sense.
What am I trying to do?: remove the gprsone icon from the statusbar. I know the .png is transparent, but still takes space up on the bar.
Reference thread: http://forum.xda-developers.com/showthread.php?t=1231831
Any pointers? I've attached the framework-res and systemui in case somebody needs it to help.
Sure I can help. With apktook, you need to register your resources which are framework-res.apk and com.htc.resources.apk. Once you've registered those, then decompile the SystemUI.apk with apktool.
EDIT: Here's a quick little "How To" I use for apktool.
Put com.htc.resources/framework-res.apk's into the C:\Users\<username>\apktool folder (or where ever you keep your apktool)
Go to that directory in a CMD window, and type in:
apktool if framework-res.apk
Hit Enter
apktool if com.htc.resources.apk
Hit Enter
Decompile run: apktool d <apk name>.apk
Compile run: apktool b <apk folder name only>​
After you compile it, the apk will be in the dist folder. So for SystemUI.apk, the folder is named SystemUI. Open SystemUI/dist, and move the SystemUI.apk folder to your desktop. Use 7zip to open the original SystemUI.apk, extract the META-INF folder and Android Manifest. Open the new SystemUI.apk and put the META-INF and Android Manifest files into this new apk. You should be good to go then.
If you get really stuck, let me know and upload your com.htc.resources.apk, and I can help you out.
Attached are successful screenshots of registering your resources and decompiling successsfully, then recompiling successfully for reference as to what you should see. I used a Rosie.apk, but it'd be the same with SystemUI.apk.
Thank you for taking the time out to help!
Sorry but I followed your instructions to a T, but my phone won't get past the HBOOT (i think that's the correct term)
This time, I didn't get compile errors with apktool, but I'm not sure I did everything correctly.
I've attached my com.htc.resources.apk
http://www.mediafire.com/?2yoijsmr954md1g
Okay, I downloaded your SystemUI.apk file, and removed the classes.dex file using 7zip and decompiled that using a Java command and baksmali. I made the edits, recompiled the new classes.dex file using a Java command and smali.
It's a different way of doing things, and how I first learned to hide the location icon, and status bar clock so I feel most comfortable with doing it that way.
Attached is the updated SystemUI.apk you provided, with *hopefully* a hidden location icon from the status bar.
The easiest way to do this:
Hook phone up to computer via USB, reboot into Recovey.
Mount /system.
Open command prompt, CD to your SDK/platform-tools directory.
Type in: adb shell
Type in: cd /system/app
Type in: cp SystemUI.apk SystemUI.bak
NOTE: This makes a copy of SystemUI.apk named SystemUI.bak.
Type in: rm SystemUI.apk
NOTE: This removes SystemUI.apk, we can always to the opposite of the cp command from above to get the original back.
Type in: exit
Now make sure your modded SystemUI.apk is in your SDK/platform-tools folder, then type: adb push SystemUI.apk /system/app/
Now let's make sure that the permissions will be correct, so adb shell back into your phone, and then type cd /system/app.
Lastly, type: chmod 0644 SystemUI.apk
Hit Enter.
Type in: exit
We're done, reboot your phone.
I want to say thanks for helping me out today.
I learned some things and got the location icon removed from the statusbar.
This sounds like a win!
kschwarz88 said:
I want to say thanks for helping me out today.
I learned some things and got the location icon removed from the statusbar.
This sounds like a win!
Click to expand...
Click to collapse
Dude, that's great to hear! I love sharing what I've learned, and am glad you took the time and learned something! This stuff is fun, so continue learning!
It's a total win! If you wanna know the Java commands to decompile classes.dex, let me know, and I can pass that knowledge on!
Sent from my ADR6300 using xda premium

[Q] [Halp][ADV][LTE] SystemUI.apk recompiling

Hey guys. Need a hand recompiling SystemUI.apk. Done this before, but not on ICS. I'll modify everything correctly, recompile works. Using apkman with apktool 1.4.3 (1.4.2?). Keep old stuff, deleted the stuff I changed (so far res/drawable/stat_sys_battery_charge.xml)
I then do the following:
Code:
adb shell stop
adb remount
adb push unsignedSystemUI.apk /system/app/SystemUI.apk
adb reboot
Status bar and bottom bar refuse to show up. Only thing that will fix it is a full nandroid restore. Tried system only, didn't help. Clearing cache and dalvik-cache doesn't help.
Any ideas?

[Q] Rebuilding SystemUI.apk

Hello, I'm trying to customize a rom and I'm running into some issues rebuilding SystemUI.apk.
I'm not sure if it matters, but for reference I'm using MoDaCo Custom ROM.
Here is my process:
Installed apktool 1.4.3 along with aapt from the ICS android SDK platform-tools
Extracted the SystemUI.apk file from the rom zip
Used apktool to extract SystemUI.apk
Made my change (edited navigation_bar.xml to put the buttons in the order I wanted)
Rebuilt SystemUI.apk with apktool. No errors.
Put the SystemUI.apk file back into the rom zip
Flashed the rom with CWR
However, once I get into android, there is no notification bar and no navigation bar. The launcher is just expanded to take up the whole screen. I believe apktool isn't rebuilding SystemUI.apk tool correctly, but I'm not really sure where to go from here. Is there some framework I'm missing for apktool that I need to add?
Any insight is appreciated. Thanks.
I'd start by just working with SystemUI.apk, not the entire rom zip.
Install the rom, confirm it's working.
Pull SystemUI.apk from the rom.
Decode it, make NO changes, re-endcode it then:
Code:
adb remount
adb shell stop
adb shell cp /system/app/SystemUI.apk /system/app/SystemUI.bak
adb push SystemUI.apk /system/app/
adb shell start
That will confirm your apktool and aapt and framework are working.
Also this way you can test each edit much more quickly.
Assuming this works then do the above procedure with your edited XML - you need to re-endcode then take the xml from one apk to the other.
If that does NOT work then you know there's a problem with your XML.

enable ics keys on any ics rom detailed guide

DO THIS AT YOUR OWN RISK MODDING FRAMEWORK IS DANGEROUS READ EVERYTHING BEFORE DOING ANYTHING
Im not responsible for bricks
your house burning down
your cat gone missing
or your phone blowing up
Ok this is NOT my idea here is the original thread http://forum.xda-developers.com/showthread.php?t=1364757
first you will need the android sdk http://developer.android.com/sdk/index.html
you need to install it on your C: directory eg:/android/android sdk
notepad++ is needed to
7zip is also needed and you need to set it as default program for apks
and apktool http://code.google.com/p/android-ap...mmary+Uploaded+ReleaseDate+Size+DownloadCount use apktool 1.4.2 if you get problems with 1.4.3 you will need apktool installer and apktool once extracted put them in a folder in the C: directory and add them to path eg; C:/android/apktool/
THE ANDROID SDK AND APKTOOL NEED TO BE ADDED TO PATH OR NONE OF THIS WILL WORK!
lets get started!
the decompile
1: open command promt and type in
Code:
cd android
(make this folder b4 you start in your user)
2:then
Code:
adb remount
if you installed adb correctly it will say remount succeeded
3:then type this in
Code:
adb pull /system/framework/framework-res.apk
once its done pulling apk
go to android in your user and you will see (if you did it right) framework-res.apk
4: back to cmd and type in
Code:
apktool d framework-res.apk
let it do its stuff
once done goto android in your user and the apk will be decompiled there for you
the modding
1: open up framework-res click on res and scroll down to values open it and click on bools
2: open bools in notepad++ and find "config_showNavigationBar" and set to true
3: now open dimens and find "navigation_bar_height" and set to 34.0dip
4:if your running a kernel like glitch devils you can disable the touch key backlights using nstools
5: done!
the recompile
you will need to switch out the appt in the folder you put apktool and stuff eg:were i put mine C:/android/apktool/
new appt http://www.mediafire.com/?0q52u6v8vdkpq1i
1:switch out appt with the new one
2:goto cmd and type
Code:
apktool b framework-res
then press enter
3:if you did everything right (installing android sdk and apktool) this part should take about 5min
4:if the recompile succeeded kiss your self (joking)
5: open android in your user (NOT ON C: DRIVE) and click on framework-res you will see a new folder called "build" click on it and
you will se three files one of these is "AndroidManifest" leave that well alone open framework-res.apkin 7zip and drag the two folders in "build" into the apk again dont drag androidManifest once the modded filles are in the apk close 7zip
adb push it back to your phone
1:in command promt type
Code:
adb push framework-res.apk /system/framework/
2:when push is complete type
Code:
adb reboot
this will now reboot your phone
3: once booted up you should see the three touch keys at the bottom of your screen everything will look cramped
so goto market and download LCD Density Modder and change the dpi from 240 to 228 reboot and enjoy
obviously this guide is for NOOBS this is not my idea just wanted to give people a easier guide to modding framework
all credit goes to evilisto not me hope you do what you want!!!
this will also work on
nexus s
nexus one
galaxy s II
vibrant
crappy
and galaxy note
other phone you probably can but these are the only ones ive tried it on try on other phones at your on risk
happy modding
peace

Categories

Resources