Replacement SystemUI.apk v2: Permanent back and menu buttons, n as Home button

Search This thread

rjin9673

Senior Member
Dec 20, 2010
138
30
Here is my home screen which I am very happy with now.

Using Go Launcher EX.
using the edited version of the following:
build.prop - Nexus S spoof
SystemUI.apk - icons and placement, 'n' button remap, permanent status bar
framework_res.apk - icons

Also added SwiftKey Tablet X. I still use Button Savior for when something goes fullscreen and I want to use back.

Pretty much have all Gameloft games working, and other big ones, like EA game Sim City Deluxe.

I couldn't have done it without the help of so many people here, such as Indirect, xecutor, revcompgeek, and many more.
 

Attachments

  • 12-01-05-1.jpg
    12-01-05-1.jpg
    38.9 KB · Views: 271
  • 12-01-05-3.jpg
    12-01-05-3.jpg
    26.3 KB · Views: 198

sangahm

Senior Member
Feb 24, 2008
158
21
Here is my home screen which I am very happy with now.

Using Go Launcher EX.
using the edited version of the following:
build.prop - Nexus S spoof
SystemUI.apk - icons and placement, 'n' button remap, permanent status bar
framework_res.apk - icons

Also added SwiftKey Tablet X. I still use Button Savior for when something goes fullscreen and I want to use back.

Pretty much have all Gameloft games working, and other big ones, like EA game Sim City Deluxe.

I couldn't have done it without the help of so many people here, such as Indirect, xecutor, revcompgeek, and many more.

How did you get 7 icons in the dock bar with Go EX?
 

rjin9673

Senior Member
Dec 20, 2010
138
30
How did you get 7 icons in the dock bar with Go EX?

Because I wasn't actually using the dock. I removed all the icons from it, clicked on the '+' and chose blank. Then went into settings and hid the background of the dock. The icons are just on the home screen like the others. That was the only way I found on Go Launcher EX to have 7 icons there.
 

sangahm

Senior Member
Feb 24, 2008
158
21
Because I wasn't actually using the dock. I removed all the icons from it, clicked on the '+' and chose blank. Then went into settings and hid the background of the dock. The icons are just on the home screen like the others. That was the only way I found on Go Launcher EX to have 7 icons there.

Ah clever. It doesn't roll with the screen changes though. But I guess you can just copy the same 7 icons at the bottom of each screen.
 

rjin9673

Senior Member
Dec 20, 2010
138
30
Ah clever. It doesn't roll with the screen changes though. But I guess you can just copy the same 7 icons at the bottom of each screen.

I only use one other screen which has a calender widget taking up the space, so it works better for me. I can see it not working for someone that uses several home screens.
 

travisn000

Senior Member
Oct 13, 2007
176
33
I'm left with changing the intent of the home icon (was the reading button) to function as the home button... need some help there :p (revcomp?)


I was digging through the SystemUI.apk (after decompiling), and I found some code in a smali file that looks like it might be what you are after...

(Code excerpt from ../smali/com/android/systemui/statusbar/StatusBarService.smali at ~line 3394)
Code:
    const-string v0, "Sending intent to launch last book"

    invoke-static {v3, v0}, Landroid/util/Slog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2022
    new-instance v0, Landroid/content/Intent;

    const-string v1, "com.bn.nook.launch.LAST_BOOK"


I tried changing com.bn.nook.launch.LAST_BOOK to com.bn.intent.action.home (..found that intent in another file), recompiled and installed, but now I don't have a status bar at all (..back ups are good!).

..I don't know if my recompile of the apk was bad (it did spit a few error messages), or if I need a more generic home intent, or if I am just not looking in the right place, but thought I would share just in case it helps someone else..

EDIT:

found another more generic home intent: android.intent.category.HOME

...still getting error when trying to recompile though:
Code:
[tln@HP-laptop nook_tab]$ apktool b -f -d SysUI-decompiled
I: Smaling...
I: Building resources...
aapt: /lib/libz.so.1: no version information available (required by aapt)
I: Building apk file...
aapt: /lib/libz.so.1: no version information available (required by aapt)
 
Last edited:

xecuter

Senior Member
Oct 11, 2008
181
58
I was digging through the SystemUI.apk (after decompiling), and I found some code in a smali file that looks like it might be what you are after...

(Code excerpt from ../smali/com/android/systemui/statusbar/StatusBarService.smali at ~line 3394)
Code:
    const-string v0, "Sending intent to launch last book"

    invoke-static {v3, v0}, Landroid/util/Slog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2022
    new-instance v0, Landroid/content/Intent;

    const-string v1, "com.bn.nook.launch.LAST_BOOK"


I tried changing com.bn.nook.launch.LAST_BOOK to com.bn.intent.action.home (..found that intent in another file), recompiled and installed, but now I don't have a status bar at all (..back ups are good!).

..I don't know if my recompile of the apk was bad (it did spit a few error messages), or if I need a more generic home intent, or if I am just not looking in the right place, but thought I would share just in case it helps someone else..

EDIT:

found another more generic home intent: android.intent.category.HOME

...still getting error when trying to recompile though:
Code:
[tln@HP-laptop nook_tab]$ apktool b -f -d SysUI-decompiled
I: Smaling...
I: Building resources...
aapt: /lib/libz.so.1: no version information available (required by aapt)
I: Building apk file...
aapt: /lib/libz.so.1: no version information available (required by aapt)

Yup, you're looking at the right place. I have tried what you did too but changing one line wasn't enough. mine compiled without error, but it some sort broke the button too. (pressing it goes to no where).. There were a few more lines to add, i copied some code i found in the lower part of the same smali file. I've attached my systemui apk in the other thread here, you can decompile it to see the changes I made.
 

wedmiston

Senior Member
Jan 6, 2012
320
5
I am new to my rooted NT and see this file. What does it do, what benefits of installing and should I bother with it or delete it?
 

rjin9673

Senior Member
Dec 20, 2010
138
30
I am new to my rooted NT and see this file. What does it do, what benefits of installing and should I bother with it or delete it?

It is an .apk that is already in your /system/app folder, and B&N uses it to modify the default Android experience, changing some of the UI features over the framework-res.apk. We have taken it and modified so that the soft keys at the bottom are in a different place, have different icons, and lastly have a different function. Also, thanks to revcompgeek, the hard 'n' button acts as a normal Android button without the use of any apps.
 

travisn000

Senior Member
Oct 13, 2007
176
33
I am new to my rooted NT and see this file. What does it do, what benefits of installing and should I bother with it or delete it?

It changes the very bottom bar (notification bar) to look and function more similar to a "native" android tablet; it also makes the 'n' button work like a native android home button.

After snowball mod , I did the following from PC console (should work with after any rooting procedure is completed):

adb devices (to make sure i'm connected.. should print nook s/n)
adb remount (to make nook system partition rewritable)
adb shell cp /system/app/SystemUI.apk /system/app/_System_apk.bak (back up existing SystemUI)
adb push /local/path/to/modded/SystemUI.apk /system/app/SystemUI.apk
...note that the above local path will be C:\local\path\etc... on windows
adb shell chmod 644 /system/app/SystemUI.apk (..make sure file permissions are correct after install)
adb reboot (reboot device to load new SystemUI.apk)
 
Last edited:

Anxiyz

Member
Dec 7, 2011
39
17
Yup, you're looking at the right place. I have tried what you did too but changing one line wasn't enough. mine compiled without error, but it some sort broke the button too. (pressing it goes to no where).. There were a few more lines to add, i copied some code i found in the lower part of the same smali file. I've attached my systemui apk in the other thread here, you can decompile it to see the changes I made.

Slightly off topic, is there a way to create a shortcut or app to execute the intent to launch the last book? (com.bn.nook.launch.LAST_BOOK)

I'd still love to have a short cut to do that after changing the status bar.
 

jay_xander

Senior Member
Aug 7, 2011
88
2
Toronto
I tried doing the systemui change and can't get it to work.

I'm using root explorer, changed the permissions to (top line) check, check, check, (second line) check, blank, blank, and (last line) check, blank, blank.

I also changed the owner to root and group to system (i also tried root).

Every time I try this, it always has a screen popup that says it must force close, but it doesn't when you click, and just keeps on popping up again.

Is there anything I forgot? I tried this and rebooted about 5 times now. Every time I reboot it has the same bar on the bottom.

The popup:

The application Status Bar (process com.android.systemui) has stopped unexpectedly. Please try again.
It gives the option to force close but it keeps popping back up if you click it.
 
Last edited:

ShinnAsuka

Senior Member
Dec 9, 2011
735
146
I tried doing the systemui change and can't get it to work.

I'm using root explorer, changed the permissions to (top line) check, check, check, (second line) check, blank, blank, and (last line) check, blank, blank.

I also changed the owner to root and group to system (i also tried root).

Every time I try this, it always has a screen popup that says it must force close, but it doesn't when you click, and just keeps on popping up again.

Is there anything I forgot? I tried this and rebooted about 5 times now. Every time I reboot it has the same bar on the bottom.

The popup:

The application Status Bar (process com.android.systemui) has stopped unexpectedly. Please try again.
It gives the option to force close but it keeps popping back up if you click it.

That is normal you need to reboot now. I'm pretty sure that owner should be 2 checks and a blank though...

Sent from my Nook Tablet using XDA PREMIUM
 

jay_xander

Senior Member
Aug 7, 2011
88
2
Toronto
That is normal you need to reboot now. I'm pretty sure that owner should be 2 checks and a blank though...

Sent from my Nook Tablet using XDA PREMIUM

I've rebooted. Tried multiple times, and the nook still loads with the same crappy stock status bar. I even tried switching launchers to see if that may be an issue, but the status bar is following me everywhere!

By the way, I tried playing around with the permissions, checking off the recommended boxes, checking everything off, and it still made no difference.
 
Last edited:

davewuvswaffles

Senior Member
Jul 18, 2010
273
51
Philadelphia
I've rebooted. Tried multiple times, and the nook still loads with the same crappy stock status bar. I even tried switching launchers to see if that may be an issue, but the status bar is following me everywhere!

By the way, I tried playing around with the permissions, checking off the recommended boxes, checking everything off, and it still made no difference.

Did you use rw-rw----

Whatever you posted in your earlier post was straight wrong
 

ae1990

Senior Member
Jan 6, 2012
232
22
rancho cucamonga
It changes the very bottom bar (notification bar) to look and function more similar to a "native" android tablet; it also makes the 'n' button work like a native android home button.

After snowball mod , I did the following from PC console (should work with after any rooting procedure is completed):

adb devices (to make sure i'm connected.. should print nook s/n)
adb remount (to make nook system partition rewritable)
adb shell cp /system/app/SystemUI.apk /system/app/_System_apk.bak (back up existing SystemUI)
adb push /local/path/to/modded/SystemUI.apk /system/app/SystemUI.apk
...note that the above local path will be C:\local\path\etc... on windows
adb shell chmod 644 /system/app/SystemUI.apk (..make sure file permissions are correct after install)
adb reboot (reboot device to load new SystemUI.apk)


Will the commands remain the same for using aterminal on ubuntu 11.10 on my desktop?
May this work by downloading to my nook amd using terminal emulator? Thank you very much
 

Top Liked Posts

  • There are no posts matching your filters.
  • 36
    I have been tweaking the SystemUI application, changing the way a few things work.

    Installation Instructions
    1. Download View attachment SystemUI.apk
    2. Make sure /system is remounted R/W. This can be done with Root Explorer or ES File Explorer. If you get a "Read-only filesystem" error this is the step you missed.
    3. Replace /system/app/SystemUI.apk with the downloaded one.
      At this point it is normal for the status bar to disappear. If it starts Force Closing repeatedly, pasting again should stop it so that you can continue to fix the permissions.
    4. Make sure the file is owned by the root user and group.
    5. Make sure the permissions of the file are 644, or read, write for user and read for group and other.
    6. Reboot and enjoy!
    I plan on adding killing the current application by long-tapping the back button like CyanogenMod. I can probably add other tweaks if requested.

    Changelog
    Version 2:
    • No more QuickNav bar when you press the n button
    • n button acts like a standard Home button
    Version 1:
    • Permanent back and menu buttons
    4
    :confused: Does anyone still have version 1 of the systemui apk because i would like to keep the quick nav bar that v2 removes :confused:

    I love the quicknav bar too. So I modified xecuter's mod and came up with this :)

    Press "n" button - go to quicknav bar
    Press the soft home button - go to home directly

    SystemUI140.zip - for 1.4.0 (not tested but should work)
    SystemUI141.zip - for 1.4.1

    Flash with CWM.
    Or you can extract the apk and use Root Explorer to replace the original, then set permission to 644 (all read, top write). Don't forget to backup.

    xecuter's excellent work which I use:
    http://xdaforums.com/showpost.php?p=21149748&postcount=21
    2
    I was digging through the SystemUI.apk (after decompiling), and I found some code in a smali file that looks like it might be what you are after...

    (Code excerpt from ../smali/com/android/systemui/statusbar/StatusBarService.smali at ~line 3394)
    Code:
        const-string v0, "Sending intent to launch last book"
    
        invoke-static {v3, v0}, Landroid/util/Slog;->d(Ljava/lang/String;Ljava/lang/String;)I
    
        .line 2022
        new-instance v0, Landroid/content/Intent;
    
        const-string v1, "com.bn.nook.launch.LAST_BOOK"


    I tried changing com.bn.nook.launch.LAST_BOOK to com.bn.intent.action.home (..found that intent in another file), recompiled and installed, but now I don't have a status bar at all (..back ups are good!).

    ..I don't know if my recompile of the apk was bad (it did spit a few error messages), or if I need a more generic home intent, or if I am just not looking in the right place, but thought I would share just in case it helps someone else..

    EDIT:

    found another more generic home intent: android.intent.category.HOME

    ...still getting error when trying to recompile though:
    Code:
    [tln@HP-laptop nook_tab]$ apktool b -f -d SysUI-decompiled
    I: Smaling...
    I: Building resources...
    aapt: /lib/libz.so.1: no version information available (required by aapt)
    I: Building apk file...
    aapt: /lib/libz.so.1: no version information available (required by aapt)

    Yup, you're looking at the right place. I have tried what you did too but changing one line wasn't enough. mine compiled without error, but it some sort broke the button too. (pressing it goes to no where).. There were a few more lines to add, i copied some code i found in the lower part of the same smali file. I've attached my systemui apk in the other thread here, you can decompile it to see the changes I made.
    2
    It appears the latest version causes some of the text to be incorrect with v1.4.3 when the SystemUI.apk is replaced. I'd love to build a new one, or provide the file for someone else to.

    For me to do it, I'm not sure I know how. What what done to SystemUI.apk to make the change?
    The systemui.apk got significantly changed in the 1.4.3 update. I tried patching one but cannot test it. I will post it here and someone please test it and give feedback. I will pull it down if broken.

    Edit: And I just added a zip to put the original systemUI.apk back on your system if something is wrong with the patched one.

    Edit: Removed. Revised versions added in post below.
    2
    Ok so after unpacking the apk and doing some digging, I found that



    Now I know very little about this stuff so sorry if this is obvious, but if we were to find the parent and change the limiting height factors for both the Vertical (portrait) and Horizontal (landscape) layouts, wouldn't we then be changing the height of the status bar?

    Edit: And just to add, I'm in the smali files looking through a few right now for this parent parameter. Does anyone know ahead of time if it not located in here?

    Edit 2: I found the .paramter "parent" in StatusBarPolicy.smali

    It doesn't have any variable attached, but it makes me feel like I'm looking in the right place.

    not too sure how you can make the bar taller, the background are .9 pngs. Not sure how it will affect the nook if you resize them. manage to move the icons about by editing layout.xml , which I can understand compared to smali files. lol.

    looks like this now

    1112314.png


    I'm left with changing the intent of the home icon (was the reading button) to function as the home button... need some help there :p (revcomp?) i will attach my edited framework and systemui once i replace back some of the stock icons which i have mistakenly replaced..