Recon Jet Basic Info - Glass General

So, I just got my Recon Jet (the self-declared "most powerful wearable computer" running Android 4.1, without Google services), and started doing some basic poking around. What would people like to know?
So far my basic impression is that I feel like I'm using a flagship smartphone running feature-phone software. All the specs are awesome, but the device does almost nothing out of the box, and there are no apps yet. The entire time I'm wearing it, it's like the device is screaming SOMEONE PLEASE MAKE A CUSTOM ROM WITH GOOGLE GLASSWARE SUPPORT.
Anywho, on to the nerdy stuff.
I didn't have the guts to try a fastboot oem unlock, so I didn't get very far in fastboot:
Code:
>fastboot -i 0x2523 getvar all
(bootloader) product: Jet_Fastboot
(bootloader) cpu: OMAP4430
(bootloader) cpurev: ES2.3
(bootloader) secure: GP
(bootloader) serialno: **redacted**
(bootloader) userdata_size: 6501231 KB
(bootloader) Flash Slot: EMMC(1)
all:
finished. total time: 0.031s
>fastboot -i 0x2523 oem ?
...
FAILED (remote failure)
finished. total time: 0.016s
>fastboot -i 0x2523 reboot
rebooting...
finished. total time: 0.000s
In ADB, without root, also didn't find too much interesting, but then again wasn't looking for anything in particular.
Code:
[email protected]:/ $ df
df
Filesystem Size Used Free Blksize
/dev 306M 32K 306M 4096
/mnt/asec 306M 0K 306M 4096
/mnt/obb 306M 0K 306M 4096
/system 503M 237M 266M 4096
/data 6G 255M 5G 4096
/cache 251M 24M 227M 4096
/factory 314M 179M 135M 4096
/storage/sdcard0 6G 255M 5G 4096
[email protected]:/ $ cat /proc/partitions
cat /proc/partitions
major minor #blocks name
179 0 7634944 mmcblk0
179 1 128 mmcblk0p1
179 2 2048 mmcblk0p2
179 3 128 mmcblk0p3
179 4 384 mmcblk0p4
179 5 327680 mmcblk0p5
179 6 16 mmcblk0p6
179 7 8192 mmcblk0p7
259 0 8192 mmcblk0p8
259 1 524288 mmcblk0p9
259 2 262144 mmcblk0p10
259 3 6501232 mmcblk0p11
[email protected]:/ $ ls -al /dev/block/platform/omap/omap_hsmmc.1/by-name
block/platform/omap/omap_hsmmc.1/by-name <
lrwxrwxrwx root root 2015-04-18 21:04 boot -> /dev/block/mmcblk0p8
lrwxrwxrwx root root 2015-04-18 21:04 bootloader -> /dev/block/mmcblk0p2
lrwxrwxrwx root root 2015-04-18 21:04 cache -> /dev/block/mmcblk0p10
lrwxrwxrwx root root 2015-04-18 21:04 crypto -> /dev/block/mmcblk0p6
lrwxrwxrwx root root 2015-04-18 21:04 efs -> /dev/block/mmcblk0p5
lrwxrwxrwx root root 2015-04-18 21:04 misc -> /dev/block/mmcblk0p4
lrwxrwxrwx root root 2015-04-18 21:04 recovery -> /dev/block/mmcblk0p7
lrwxrwxrwx root root 2015-04-18 21:04 system -> /dev/block/mmcblk0p9
lrwxrwxrwx root root 2015-04-18 21:04 ubootenv -> /dev/block/mmcblk0p3
lrwxrwxrwx root root 2015-04-18 21:04 userdata -> /dev/block/mmcblk0p11
lrwxrwxrwx root root 2015-04-18 21:04 xloader -> /dev/block/mmcblk0p1
[email protected]:/ $ ls
ls
acct
cache
charger
config
d
data
default.prop
dev
etc
factory
init
init.goldfish.rc
init.omap4jetboard.rc
init.omap4jetboard.usb.rc
init.rc
init.trace.rc
init.usb.rc
mnt
proc
res
root
sbin
sdcard
storage
sys
system
ueventd.goldfish.rc
ueventd.omap4jetboard.rc
ueventd.rc
vendor
Note that Recon devices do not use a VendorID recognized by standard adb and fastboot, so you will have to take extra steps to use these tools.
Specifically, to use ADB, you will need to modify (or create) an adb_usb.ini file containing 0x2523, and fastboot will have to use the -i option.
Users on the sparsely-used Recon forums (addressing almost exclusively Recon's previous generation of products) report being able to sideload APKs, but I can't think of any apps I would like on my face that don't rely on Google Play Services. Any suggestions?
Mods, please feel free to move this to the appropriate forum for Recon Jet, as soon as one exists. Until then, this seemed to me like the best place.

System app listing
Code:
<?xml version="1.0" encoding="utf-8"?>
<installed-packages>
<package name="android"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.backupconfirm"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.bluetooth"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150211.201015" />
<package name="com.android.certinstaller"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.defcontainer"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.htmlviewer"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.inputdevices"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.keychain"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.packageinstaller"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.applications"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.calendar"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.contacts"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.downloads"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.downloads.ui"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.drm"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.media"
versionCode="509"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.settings"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.telephony"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.providers.userdictionary"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.provision"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.settings"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.sharedstoragebackup"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.smspush"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.systemui"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.android.vpndialogs"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.dsi.ant.plugins.antplus"
versionCode="30100"
versionName="3.1.0" />
<package name="com.dsi.ant.service.socket"
versionCode="40700"
versionName="4.7.0" />
<package name="com.dsi.ant.stonestreetoneantservice"
versionCode="1"
versionName="1.0" />
<package name="com.reconinstruments.QuickstartGuide"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.agps"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.appinstaller"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.applauncher"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.battery.logger"
versionCode="1"
versionName="1.0" />
<package name="com.reconinstruments.ble_ss1"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.camera"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.compass"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.dashboard"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.dashcompass"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.dashlauncherredux"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.dashlivestats"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.dashwarning"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.geodataservice"
versionCode="1"
versionName="1.0" />
<package name="com.reconinstruments.heading"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.hfpservicess1"
versionCode="1"
versionName="1.0" />
<package name="com.reconinstruments.hudserver"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
<package name="com.reconinstruments.hudservice"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.itemhost"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.jetapplauncher"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.jetconnectdevice"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.jetmusic"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.jetsensorconnect"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.jetunpairdevice"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.lispxml"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.lockdown"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.maps"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.mapservicess1"
versionCode="1"
versionName="1.0" />
<package name="com.reconinstruments.messagecenter"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.mfitester"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.myactivities"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.nativetest"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.offsetkeyboard"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.passcodelock"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.phone"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.power"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.quickactions"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.socialsharing"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.symptomchecker"
versionCode="7047"
versionName="4.1.1" />
<package name="com.reconinstruments.systemui"
versionCode="7047"
versionName="4.1.1" />
<package name="com.rxnetworks.rxnservicesxybrid"
versionCode="7047"
versionName="4.1.1" />
<package name="com.svox.pico"
versionCode="1"
versionName="1.0" />
<package name="jp.co.omronsoft.openwnn"
versionCode="16"
versionName="4.1.2-eng.linux-jenkins.20150414.021802" />
</installed-packages>

That would be awesome to see a google glass ROM port over. I would love to use these for navigation when I am on my motorcycle!
The forums that Recon has is dismal to say the least. Hopefully there will be more support as people get their hands on them.

Common someone please help us out!!

well, this is now available on some sites, but most of the major sites like amazon still have the Jet for preorder for July 1st.
Hopefully, when this gets in the hands of the mod gods, great things will happen.
alot of potential here, with the open sdk and all.

Just picked up a pair of Recon Snow2 goggles, which is fundamentally the same thing as Jet, according the build.props.
Would be great to get a section dedicated to Recon products.

has anyone tried rooting the Jet yet? I got my hands on one and would really like to be able to root it!

Hello everyone, I got the recon jet and I think the on board gps is not working. I'm hoping it's a software issue and not hardware. I'm new here and I'm no hacker but I can follow instructions. If any one can help me find the solution I'd greatly appreciate it.

I have my recon jet..... what to do with it the recon instruments site is dead. My recon jet asks for activation. is there any chance to use it somehow?

Anyone with an Idea?

You can still activate it on the website (it says password not accepted or smtp issue but it still works)
Dev part of the website is down so there is no way to access the sdk to develop any new app but basic usage is working.

Lost my recon jet adb drivers anyone happen to have them?

Did you get the ADB driver? I have a copy if you still need it.
More generally, with Recon now gone, and the JET/Snow2 products no longer supported, it makes sense to try make a useful custom image that can be community supported. Is anyone looking at this?

Activating Recon Jet in 2020
Angelbast said:
You can still activate it on the website (it says password not accepted or smtp issue but it still works)
Dev part of the website is down so there is no way to access the sdk to develop any new app but basic usage is working.
Click to expand...
Click to collapse
I am trying to activate Recon Jet but both the application and website do not work. The display on he glasses is stuck on the 'connect to a PC via USB and activate' screen. The device is detected by the operating system as an MTP device.
I tried to connect with the ADB driver included within the glasses and accessed using via MTP, one obtained from recon website (using the web archive) and ADB installed on Ubuntu via apt. None can detect the device connected via USB.
Does anyone know a way to get past the activation screen or to get ADB to connect to the device? Thank you.

dxxb2020 said:
Activating Recon Jet in 2020
I am trying to activate Recon Jet but both the application and website do not work. The display on he glasses is stuck on the 'connect to a PC via USB and activate' screen. The device is detected by the operating system as an MTP device.
I tried to connect with the ADB driver included within the glasses and accessed using via MTP, one obtained from recon website (using the web archive) and ADB installed on Ubuntu via apt. None can detect the device connected via USB.
Does anyone know a way to get past the activation screen or to get ADB to connect to the device? Thank you.
Click to expand...
Click to collapse
I have the same problem been trying for two days still can't get it to activate.

gpatech said:
Did you get the ADB driver? I have a copy if you still need it.
More generally, with Recon now gone, and the JET/Snow2 products no longer supported, it makes sense to try make a useful custom image that can be community supported. Is anyone looking at this?
Click to expand...
Click to collapse
Hi Can i try it to see if it works. link please

Just pulled out my old Snow2 goggles. Seem to boot up fine and are working. Anyone still using Jets or Snow2? Anyone doing anything interesting with them?

I am hoping to get some Reconjet glasses up and working when they arrive this week, for paragliding , to display flightdata. But it appears all the support has gone awol. I have been trying for ages to find an archive with the Recon SDK to let me do it but without luck. Can anyone assist?. I think the glass is basically the same as the snow2 , snow2 looks a better helmet frendly configuration for my application to be fair.
regards

PLease help. Does anyone have the Recon Uplink Desktop App for windows can seen to fine it anywhere.

Some how I factory reset my Snow2 to a very old version. Anyone know how to get back to the latest?

Related

[Q] Market requires versionCode.... positive 32-bit integer in AndroidManifest

What does that mean ?! Here is the full error I get when submitting my proggy to the market;
ERRORS;
error#1- Market requires versionCode to be set to a positive 32-bit integer in AndroidManifest.xml
error#2- Market requires versionName to be set in AndroidManifest.xml
<><><><><><><><>
My Manifest; ( I replaced my app info with gen info for the forum)
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mydomain.myapp"
android:versionCode="1"
android:versionName="1">
<uses-sdk android:minSdkVersion="7" />
<uses-sdk android:targetSdkVersion="8" />
<uses-sdk android:maxSdkVersion="9" />
<activity android:name=".myapp"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:screenOrientation="landscape">
<application android:label="@string/myapp" android:icon="@drawable/myicon">
<uses-feature android:name="android.hardware.touchscreen" android:required="true"/>
<uses-feature android:name="android.hardware.camera" android:required="false"/>
<uses-feature android:name="android.hardware.wifi" android:required="false"/>
<uses-feature android:name="android.hardware.sensor.accelerometer" android:required="false"/>
<uses-feature android:name="android.hardware.location.gps" android:required="false"/>
<uses-feature android:name="android.hardware.bluetooth" android:required="false"/>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</application>
</activity>
</manifest>
<><><><><>
Any help would be wonderful, thanks taking the time to read this post

[GUIDE] [MODS] Collection of mods for all gingerbread[2.3] phones...

CREDITS:-
Master&Slave™ FOR MAKING ME UNDERSTAND ABOUT FEW STATUS BAR TWEAKS.
b16h22 FOR Settings Shortcut in StatusBar.
petrukgrinder for jelly bean style time, date in status bar
toxic77 for ICS Sliders and ICS Progress bar
evanlocked for Recent app Shortcut in StatusBar
WHAT YOU NEED:-
1. A COMPUTER AND A ROOTED AND DEODEXED SAMSUNG GALAXY ACE PLUS...
2. FILES MENTIONED IN EACH MOD CAN BE FOUND IN system/app OR system/framework FOLDERS OR OTHER FOLDERS AS MENTIONED IN EACH MOD.
3. LEARN EDITING APK FILES WITH apktool or similar. try this guide by me for how to compile/decompile apk files
4. notepad++ TO EDIT XML AND OTHER FILES.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
~~~~~~~~~~~~~~~~~~~~~~STATUS BAR MODS~~~~~~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------​1. Center Clock
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar.xml with notepad++
Search for this line and remove it:-
Code:
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
Search for this line
Code:
xmlns:android="http://schemas.android.com/apk/res/android">
Paste these lines after the above line
Code:
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/icons" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
Save the file and close it. The whole status_bar.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.StatusBarView android:orientation="vertical" android:background="#ff000000" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/icons" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:paddingLeft="6.0dip" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" android:layout_alignParentLeft="true" />
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:paddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="8.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="25.0dip" android:layout_height="25.0dip" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="25.0dip" android:layout_height="25.0dip" />
</ImageSwitcher>
<com.android.systemui.statusbar.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:paddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textAppearance="@android:style/TextAppearance.StatusBar.Ticker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@android:style/TextAppearance.StatusBar.Ticker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
</com.android.systemui.statusbar.TickerView>
</LinearLayout>
<com.android.systemui.statusbar.DateView android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:gravity="left|center" android:id="@id/date" android:background="#ff000000" android:paddingLeft="6.0px" android:paddingRight="6.0px" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</com.android.systemui.statusbar.StatusBarView>
Now compile back apk file and push back to system/app.
2. No Clock
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar.xml with notepad++
Search for this line and remove it:-
Code:
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
Save the file and close it. The whole status_bar.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.StatusBarView android:orientation="vertical" android:background="#ff000000" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:paddingLeft="6.0dip" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" android:layout_alignParentLeft="true" />
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:paddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="8.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="25.0dip" android:layout_height="25.0dip" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="25.0dip" android:layout_height="25.0dip" />
</ImageSwitcher>
<com.android.systemui.statusbar.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:paddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textAppearance="@android:style/TextAppearance.StatusBar.Ticker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@android:style/TextAppearance.StatusBar.Ticker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
</com.android.systemui.statusbar.TickerView>
</LinearLayout>
<com.android.systemui.statusbar.DateView android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:gravity="left|center" android:id="@id/date" android:background="#ff000000" android:paddingLeft="6.0px" android:paddingRight="6.0px" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</com.android.systemui.statusbar.StatusBarView>
Now compile back apk file and push back to system/app.
3. No Date
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar.xml with notepad++
Search for this line and remove it:-
Code:
<com.android.systemui.statusbar.DateView android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:gravity="left|center" android:id="@id/date" android:background="#ff000000" android:paddingLeft="6.0px" android:paddingRight="6.0px" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
Save the file and close it. The whole status_bar.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.StatusBarView android:orientation="vertical" android:background="#ff000000" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/icons" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:paddingLeft="6.0dip" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" android:layout_alignParentLeft="true" />
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_alignParentRight="true" />
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
<LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:paddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<ImageSwitcher android:id="@id/tickerIcon" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="8.0dip">
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="25.0dip" android:layout_height="25.0dip" />
<com.android.systemui.statusbar.AnimatedImageView android:layout_width="25.0dip" android:layout_height="25.0dip" />
</ImageSwitcher>
<com.android.systemui.statusbar.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:paddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
<TextView android:textAppearance="@android:style/TextAppearance.StatusBar.Ticker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
<TextView android:textAppearance="@android:style/TextAppearance.StatusBar.Ticker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
</com.android.systemui.statusbar.TickerView>
</LinearLayout>
</com.android.systemui.statusbar.StatusBarView>
Now compile back apk file and push back to system/app.
4. Pulldown Clock/Center Clear Button
4.1 Pulldown Clock
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar_expanded.xml with notepad++
Search for this line
Code:
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="7.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
Replace above line with this
Code:
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
Save the file and close it. The whole status_bar_expanded.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.ExpandedView android:orientation="vertical" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/title_bar_portrait" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:layout_gravity="center_vertical" android:id="@id/carrier_label" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="1.0dip" android:layout_weight="1.0" />
<com.android.systemui.statusbar.Clock android:textAppearance="@android:style/TextAppearance.StatusBar.Icon" android:textSize="16.0sp" android:gravity="center_vertical" android:id="@id/clock" android:paddingRight="6.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
</LinearLayout>
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.NotificationLinearLayout android:orientation="vertical" android:id="@id/notificationLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/noNotificationsTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_no_notifications_title" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/ongoingTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_ongoing_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/ongoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/latestTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_latest_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
</com.android.systemui.statusbar.NotificationLinearLayout>
</ScrollView>
<ImageView android:id="@id/title_bar_shadow" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
</FrameLayout>
</com.android.systemui.statusbar.ExpandedView>
Now compile back apk file and push back to system/app.
4.2 Center Clear Button
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar_expanded.xml with notepad++
Search for this line and remove it
Code:
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="7.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
Search for this line
Code:
</com.android.systemui.statusbar.NotificationLinearLayout>
Paste these lines before the above line
Code:
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="7.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
Save the file and close it. The whole status_bar_expanded.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.ExpandedView android:orientation="vertical" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/title_bar_portrait" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:layout_gravity="center_vertical" android:id="@id/carrier_label" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="1.0dip" android:layout_weight="1.0" />
</LinearLayout>
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.NotificationLinearLayout android:orientation="vertical" android:id="@id/notificationLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/noNotificationsTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_no_notifications_title" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/ongoingTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_ongoing_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/ongoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/latestTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_latest_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="7.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
</com.android.systemui.statusbar.NotificationLinearLayout>
</ScrollView>
<ImageView android:id="@id/title_bar_shadow" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
</FrameLayout>
</com.android.systemui.statusbar.ExpandedView>
Now compile back apk file and push back to system/app.
5. Remove Carrier logo
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar_expanded.xml with notepad++
Search for this line and remove it
Code:
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:layout_gravity="center_vertical" android:id="@id/carrier_label" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="1.0dip" android:layout_weight="1.0" />
Save the file and close it. The whole status_bar_expanded.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.ExpandedView android:orientation="vertical" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/title_bar_portrait" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="7.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
</LinearLayout>
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.NotificationLinearLayout android:orientation="vertical" android:id="@id/notificationLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/noNotificationsTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_no_notifications_title" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/ongoingTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_ongoing_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/ongoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/latestTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_latest_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
</com.android.systemui.statusbar.NotificationLinearLayout>
</ScrollView>
<ImageView android:id="@id/title_bar_shadow" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
</FrameLayout>
</com.android.systemui.statusbar.ExpandedView>
Now compile back apk file and push back to system/app.
6. Carrier logo in bottom of status bar
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar_expanded.xml with notepad++
Search for this line and remove it
Code:
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:layout_gravity="center_vertical" android:id="@id/carrier_label" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:layout_marginTop="1.0dip" android:layout_weight="1.0" />
Save the file and close it. now open status_bar_tracking.xml with notepad++
search for this line
Code:
<ImageView android:layout_gravity="bottom" android:id="@id/close_on" android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/status_bar_close_on" android:scaleType="fitXY" />
replace above line with this line
Code:
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/status_bar_close_on" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:gravity="center_horizontal" android:paddingBottom="1.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="1.0dip" />
</LinearLayout>
Save the file and close it.
The whole status_bar_expanded.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.ExpandedView android:orientation="vertical" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/title_bar_portrait" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:focusable="true" android:clickable="true" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="7.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
</LinearLayout>
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.NotificationLinearLayout android:orientation="vertical" android:id="@id/notificationLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/noNotificationsTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_no_notifications_title" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/ongoingTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_ongoing_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/ongoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/latestTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_latest_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
</com.android.systemui.statusbar.NotificationLinearLayout>
</ScrollView>
<ImageView android:id="@id/title_bar_shadow" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
</FrameLayout>
</com.android.systemui.statusbar.ExpandedView>
and The whole status_bar_tracking.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.TrackingView android:orientation="vertical" android:paddingLeft="0.0px" android:paddingRight="0.0px" android:paddingBottom="0.0px" android:focusable="true" android:visibility="gone" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<View android:id="@id/tracking_background" android:background="@drawable/status_bar_background" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" />
<com.android.systemui.statusbar.CloseDragHandle android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/status_bar_close_on" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:gravity="center_horizontal" android:paddingBottom="1.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="1.0dip" />
</LinearLayout>
</com.android.systemui.statusbar.CloseDragHandle>
</com.android.systemui.statusbar.TrackingView>
Now compile back apk file and push back to system/app.
7. Add settings shortcut in status bar
GO HERE​
8. Jelly bean style Date, Time and Day on Status Bar
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\layout\ and open status_bar_expanded.xml with notepad++
Search for this line
Code:
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/carrier_label_layout" android:layout_width="fill_parent" android:layout_height="wrap_content">
Replace above line with this line
Code:
<com.android.systemui.statusbar.StatusBarJellyHeaderView android:layout_width="wrap_content" android:layout_height="wrap_content" />
Save the file and close it.
Download Jelly.zip from attachments of this post
Extract jelly.zip and copy two files from jelly.zip to SystemUI.apk/smali/com/android/systemui/statusbar/(here)
Now compile back apk file and push back to system/app.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
9. Add Recent App shortcut in status bar
Decompile systemui.apk with apktool or similar.
Go to SystemUI.apk\res\values\ and open ids.xml with notepad++
Add this line in end of code but before </resources>
Code:
<item type="id" name="recent_app_button">false</item>
Now go to SystemUI.apk\res\layout\ and open statusbar_expanded.xml with notepad++
Search for 'clear' and whole code will be like this or different
Code:
<Button android:textSize="15.0sp" android:id="@id/clear_all_button" android:paddingRight="6.0dip" android:layout_width="46.0dip" android:layout_height="46.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" style="@style/Clear.Buttons" />
Add this line above the code mentioned above
Code:
<com.android.systemui.statusbar.RecentAppButton android:textSize="10.0dip" android:id="@id/recent_app_button" android:background="@drawable/btn_recent_app" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scaleType="center" android:layout_toRightOf="@id/settings_button" />
Save the file and close it.
Download sourcei.zip from attachments of this post
Extract sourcei.zip and copy RecentAppButton.smali to SystemUI.apk/smali/com/android/systemui/statusbar/(here)
and copy btn_recent_app.9.png to SystemUI.apk\res\drawable-mdpi\(here)
Now compile back apk file and push back to system/app.
10. Jelly Bean 4.2.2 Status bar on Gingerbread.
Screenshots:
Click to expand...
Click to collapse
Guide:
Go Here​
Reserved for more status bar stuff
Reserved for even more status bar stuff
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
~~~~~~~~~~~~~~~~~~~~~~System Apps Mods~~~~~~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------​
1. Remove (ANNOYING) SMS LOG from Call log
Decompile LogsProvider.apk with apktool or similar.
Go to LogsProvider.apk\smali\com\sec\android\provider\logsprovider\ and open LogsProvider.smali with notepad++
Search for word "SMS"
Remove the whole code. As shown below
Code:
.line 216
sget-object v0, Lcom/sec/android/provider/logsprovider/LogsProvider;->sURIMatcher:Landroid/content/UriMatcher;
const-string v1, "logs"
const-string v1, "sms"
const/16 v2, 0x9
invoke-virtual {v0, v3, v1, v2}, Landroid/content/UriMatcher;->addURI(Ljava/lang/String;Ljava/lang/String;I)V
Save the file and close it.
Now compile back apk file and push back to system/app.
2. Add own wallpapers to default wallpaper gallery.
Decompile TwWallpaperChooser.apk with apktool or similar.
resize wallpaper in two copies with some tool like "any pic image resizer". one copy of wallpaper of around 640x480 dimension and second copy of wallpaper of around 107x80 dimension(these values depends on whether your device is hdpi, mdpi, ldpi etc)(not much important only for proper re-sizing)
Rename wallpaper of 1st copy to wallpaper_name and wallpaper of 2nd copy to wallpaper_name_small
now copy these wallpapers to TwWallpaperChooser.apk\res\drawable-mdpi\
Go to TwWallpaperChooser.apk\res\values-mdpi\ and open arrays.xml with notepad++
Search for line
Code:
</string-array>
Add this line for wallpaper copied in drawable-mdpi from first copy
Code:
<item>wallpaper_name</item>
note: here we need to add only name of wallpaper from first copy. we won't add name of wallpaper from second copy i.e. wallpaper_name_small
Now whole arrays.xml would look like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="wallpapers">
<item>wallpaper_lock</item>
<item>wallpaper_22</item>
<item>wallpaper_23</item>
<item>wallpaper_name</item>
</string-array>
</resources>
Save the file and close it.
Now compile back apk file and push back to system/app.
3. CRT OFF ANIMATION.
Decompile framework-res.apk with apktool or similar.
Go to framework-res.apk\res\values\ and open bools.xml with notepad++
Search for line
<bool name="config_animateScreenLights">true</bool>
Click to expand...
Click to collapse
Replace true with false. As shown below
<bool name="config_animateScreenLights">false</bool>
Click to expand...
Click to collapse
Save the file and close it.
Now compile back apk file and push back to system/framework.
Now open your build.prop with root explorer or similar on your phone.
search for
debug.sf.hw=1
Click to expand...
Click to collapse
add # infront of this line. Like this
#debug.sf.hw=1
Click to expand...
Click to collapse
save it and restart your phone.
4. ICS STYLE Progress bar and Sliders.
Decompile framework-res.apk with apktool or similar.
Go to framework-res.apk\res\drawable\ and open progress_horizontal.xml with notepad++
Replace Whole code with this code
Code:
<?xml version="1.0" encoding="utf-8"?>
<layer-list
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@id/background" android:drawable="@drawable/progress_bg_holo_light" />
<item android:id="@id/secondaryProgress">
<scale android:drawable="@drawable/progress_secondary_holo_light" android:scaleWidth="100%" />
</item>
<item android:id="@id/progress">
<scale android:drawable="@drawable/progress_primary_holo_light" android:scaleWidth="100%" />
</item>
</layer-list>
Save the file and close it.
Now open progress_indeterminate_horizontal.xml
and replace whole code with this
Code:
<?xml version="1.0" encoding="utf-8"?>
<animation-list android:oneshot="false"
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo1" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo2" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo3" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo4" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo5" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo6" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo7" />
<item android:duration="50" android:drawable="@drawable/progressbar_indeterminate_holo8" />
</animation-list>
Save the file and close it.
Go to framework-res.apk\res\values\ and open styles.xml with notepad++
Search for Widget.ProgressBar.Horizontal and select whole code starting from <style name="Widget.ProgressBar.Horizontal" to </style>
Now replace it with this code
Code:
<style name="Widget.ProgressBar.Horizontal" parent="@style/Widget.ProgressBar">
<item name="maxHeight">16.0dip</item>
<item name="indeterminateOnly">false</item>
<item name="indeterminateDrawable">@drawable/progress_indeterminate_horizontal</item>
<item name="progressDrawable">@drawable/progress_horizontal</item>
<item name="minHeight">16.0dip</item>
</style>
Search for Widget.SeekBar and select whole code starting from <style name="Widget.SeekBar" parent="@style/Widget"> to </style>
Now replace it with this code
Code:
<style name="Widget.SeekBar" parent="@style/Widget">
<item name="focusable">true</item>
<item name="maxHeight">13.0dip</item>
<item name="indeterminateOnly">false</item>
<item name="indeterminateDrawable">@drawable/progress_horizontal</item>
<item name="progressDrawable">@drawable/progress_horizontal</item>
<item name="minHeight">13.0dip</item>
<item name="thumb">@drawable/seek_thumb</item>
<item name="thumbOffset">16.0dip</item>
</style>
Save the file and close it.
Now download progress_holo.zip from here and ics progress bar.zip from here
Extract files from both zips to res/drawable-mdpi/(here)
Now compile back apk file and push back to system/framework.
5. Modifying Settings app.
Screenshots:
Click to expand...
Click to collapse
Click to expand...
Click to collapse
5.1 Adding Categories in settings menu
Decompile Settings.apk with apktool or similar.
Go to Settings.apk\res\xml\ and open settings.xml with notepad++
Add this in it anywhere you want like in screenshot. (change ATOM Settings to whatever you want)
Code:
<PreferenceCategory android:title="ATOM Settings" />
5.2 Adding Options in settings menu
Decompile app you want to launch from the settings with apktool or similar. (in may case it is lidroid parts)
Open AndroidManifest.xml in notepad++ and in 2nd line search for package="com.something.else" (package="com.lidroid.parts" in my case)
Decompile Settings.apk with apktool or similar.
Go to Settings.apk\res\drawable-mdpi\ and copy and paste icon from the app. Remember the name of icon.
Go to Settings.apk\res\xml\ and open settings.xml with notepad++
Add this code where you want.
Code:
<com.android.settings.IconPreferenceScreen android:title="Atom Settings" settings:icon="@drawable/ic_gaple_part">
<intent android:targetPackage="com.lidroid.parts" android:action="android.intent.action.MAIN" android:targetClass="com.lidroid.parts.MainActivity" />
</com.android.settings.IconPreferenceScreen>
Change ic_gaple_part with name of your icon.
Change com.lidroid.parts to what it was yours in 2nd step.
5.3 Adding Text in About Phone section
Go Here​
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
~~~~~~~~~~~~~~~~~~~~~~Misc. Mods~~~~~~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------​
1. CHANGING HARD KEY FUNCTION (REMAPPING BUTTON)
1. open /system/usr/keylayout/[phone model]-keypad.kl with notepad++
(Some phone may have different names, but it will always end with "keypad.kl)
it will look like this --
Code:
# Copyright (c) 2011, Code Aurora Forum.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# [url]http://www.apache.org/licenses/LICENSE-2.0[/url]
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
key 2 1
key 3 2
key 4 3
key 5 4
key 6 5
key 7 6
key 8 7
key 9 8
key 10 9
key 11 0
key 158 BACK WAKE_DROPPED
key 230 HOME WAKE
key 60 SOFT_RIGHT WAKE
key 62 ENDCALL WAKE_DROPPED
key 229 MENU WAKE_DROPPED
key 59 MENU WAKE_DROPPED
key 139 MENU WAKE_DROPPED
key 228 POUND
key 227 STAR
key 231 CALL WAKE_DROPPED
key 61 CALL WAKE_DROPPED
key 232 DPAD_CENTER WAKE_DROPPED
key 108 DPAD_DOWN WAKE_DROPPED
key 103 DPAD_UP WAKE_DROPPED
key 102 ENDCALL WAKE_DROPPED
key 105 DPAD_LEFT WAKE_DROPPED
key 106 DPAD_RIGHT WAKE_DROPPED
key 115 VOLUME_UP WAKE
key 114 VOLUME_DOWN WAKE
key 212 SLASH
key 213 DEL WAKE_DROPPED
key 355 DEL WAKE_DROPPED
key 16 Q
key 17 W
key 18 E
key 19 R
key 20 T
key 21 Y
key 22 U
key 23 I
key 24 O
key 25 P
key 30 A
key 31 S
key 32 D
key 33 F
key 34 G
key 35 H
key 36 J
key 37 K
key 38 L
key 14 DEL
key 44 Z
key 45 X
key 46 C
key 47 V
key 48 B
key 49 N
key 50 M
key 51 COMMA
key 52 PERIOD
key 28 ENTER
key 56 ALT_LEFT
key 42 SHIFT_LEFT
key 215 AT
key 57 SPACE
key 53 SLASH
key 127 SYM
key 100 ALT_RIGHT
key 399 GRAVE
HERE YOU WILL FIND 3 ROWS...
FIRST ROW
As you can see, there are different attributes defaultly assigned to each key. like this
Code:
key 102 #FOR HOME
key 139 #FOR MENU
key 158 #FOR BACK
key 115 #FOR VOLUME_UP
key 114 #FOR VOLUME_DOWN
SECOND ROW
Specific application/action launchers:
Code:
HOME #Launches "Home"
MENU #Launches "Menu"
BACK #Takes you back to the last activity
SEARCH #Launches "Universal Search"
CALL #Launches the "Phone" activity and corresponding .apk or initiates a call
ENDCALL #Ends a call
CAMERA #Launches "Camera" activity and corresponding .apk
FOCUS #Initiates Auto-Focus while using the Camera
VOLUME_UP #Self explanatory
VOLUME_DOWN #Self explanatory
THIRD ROW
And attributes saying if it should wake the phone at button push to complete the action, or if it should just complete the action without waking the screen.
Code:
WAKE #Completes the action without waking the screen
WAKE_DROPPED #Wakes the phone to complete the action
Click to expand...
Click to collapse
2. NOW WE WILL EDIT SECOND AND/OR THIRD ROW
Erase the center row value for any key to completely disable it. To reassign the key, replace the center row value with another one from the same row. Change the right row value to either "WAKE" or blank to enable the wake function. Do not modify the left row.
NOTE: don't edit left row i.e. first row which contains specific key identity number.
FOR EXAMPLE I DO THESE CHANGES
DEFAULT VALUES ---
Code:
key 115 VOLUME_UP WAKE
key 114 VOLUME_DOWN WAKE
CHANGED VALUES ---
Code:
key 115 CAMERA WAKE
key 114 FOCUS WAKE
NOW VOLUME UP KEY WILL WORK AS CAMERA KEY AND VOLUME DOWN KEY WILL WORK AS FOCUS KEY....
NOTE: all words should be in BOLD letters i.e. capital letters...
I don't see any difference between this and 'StatusBar Tweaks' thread by Master&Slave™
varun.chitre15 said:
I don't see any difference between this and 'StatusBar Tweaks' thread by Master&Slave™
Click to expand...
Click to collapse
yes those status bar mods are same but i am currently adding more mods also more status bar mods which are not from him...
How to push those apk back??? Can I replace them using Root browser??
---------- Post added at 11:12 PM ---------- Previous post was at 10:56 PM ----------
nrgmalik said:
How to push those apk back??? Can I replace them using Root browser??
Click to expand...
Click to collapse
Also, do I need to decompile it using framework-res.apk or systemui.apk???which one??
Also, i have a Ace Duos(GT-S6802) mdpi, so dimensions given by you in twwallpaperchooser must be same for my phone? Right?
Yes you can replace apk's with root explorer...
I don't understand what you are talking of systemui.apk and framework-res.apk...
If you are talking of while Decompileing apk you will need to install framework-res.apk...
YES you will have to resize images to same dimention...
Sent from my GT-S7500 using xda premium
lokeshsaini94 said:
Yes you can replace apk's with root explorer...
I don't understand what you are talking of systemui.apk and framework-res.apk...
If you are talking of while Decompileing apk you will need to install framework-res.apk...
YES you will have to resize images to same dimention...
Sent from my GT-S7500 using xda premium
Click to expand...
Click to collapse
Sorry for asking about this but I think it will cause problem.
I have tried decompiling worked perfect. The problem starts when I recompile. After recompilation when I extracted both the apk's (original and recompiled one) some of the xml's which were edited are missing.
Edit: I used 7zip for extracting and compressing, but the folder res/values/ is missing . It is also not there in the original apk.
Sent from my GT-S6802 using xda premium
That problem is related to tool you are using so if you ask there than it might help... i can't help you much ...
Or try some other tool ...
Sent from my GT-S7500 using xda premium
lokeshsaini94 said:
That problem is related to tool you are using so if you ask there than it might help... i can't help you much ...
Or try some other tool ...
Sent from my GT-S7500 using xda premium
Click to expand...
Click to collapse
Give me a link to the tool you are using.
Sent from my GT-S6802 using xda premium
I don't have my computer so I can't give you links but try apktool from its official we site... Or apk multi - tool. Or vts... There are many more just search ...
Sent from my GT-S7500 using xda premium
nrgmalik said:
Give me a link to the tool you are using.
Sent from my GT-S6802 using xda premium
Click to expand...
Click to collapse
i think now i know why you get those errors... use apktool to decompile apk's and when you compile them back open both orignal and moded in 7zip or similar and copy META-INF folder and AndroidManifest.xml file from orignal to moded without extracting them... just drag and drop... and now you won't get those force closes...
here is the guide to decompile apk files my way by me... http://forum.xda-developers.com/show....php?t=1954886
Guide updated!!!!!!!!
Thanks bro, i'll try it
Error?
I got this error when I try to re-compile my systemui.apk
I'm on Xperia Ray Gingerbread, unlock, rooted
Code:
C:\ANDROID STUFFS\APKTOOL>apktool b systemui
I: Checking whether sources has changed...
I: Smaling...
I: Checking whether resources has changed...
I: Building resources...
C:\ANDROID STUFFS\APKTOOL\systemui\res\layout\status_bar_tracking.xml:6: error:
Error: No resource found that matches the given name (at 'id' with value '@id/ca
rrier_label_background').
C:\ANDROID STUFFS\APKTOOL\systemui\res\layout\status_bar_tracking.xml:7: error:
Error: No resource found that matches the given name (at 'textColor' with value
'@color/status_bar_carrier_label_text').
Exception in thread "main" brut.androlib.AndrolibException: brut.common.BrutExce
ption: could not exec command: [aapt, p, -F, C:\Users\alex\AppData\Local\Temp\AP
KTOOL7935870667486649461.tmp, -I, C:\Users\alex\apktool\framework\1.apk, -S, C:\
ANDROID STUFFS\APKTOOL\systemui\res, -M, C:\ANDROID STUFFS\APKTOOL\systemui\Andr
oidManifest.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
a:193)
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:301)
at brut.androlib.Androlib.buildResources(Androlib.java:248)
at brut.androlib.Androlib.build(Androlib.java:171)
at brut.androlib.Androlib.build(Androlib.java:154)
at brut.apktool.Main.cmdBuild(Main.java:182)
at brut.apktool.Main.main(Main.java:67)
Caused by: brut.common.BrutException: could not exec command: [aapt, p, -F, C:\U
sers\alex\AppData\Local\Temp\APKTOOL7935870667486649461.tmp, -I, C:\Users\alex\a
pktool\framework\1.apk, -S, C:\ANDROID STUFFS\APKTOOL\systemui\res, -M, C:\ANDRO
ID STUFFS\APKTOOL\systemui\AndroidManifest.xml]
at brut.util.OS.exec(OS.java:83)
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
a:191)
... 6 more
C:\ANDROID STUFFS\APKTOOL>
Help.........
I'm trying to move the carrier logo to the bottom of the status bar
Here's my systemui.apk
crt mod ans sms mod ...
lokeshsaini94 said:
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
~~~~~~~~~~~~~~~~~~~~~~system app mods~~~~~~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------​
1. Remove (ANNOYING) SMS LOG from Call log
Decompile LogsProvider.apk with apktool or similar.
Go to LogsProvider.apk\smali\com\sec\android\provider\logsprovider\ and open LogsProvider.smali with notepad++
Search for word "SMS"
Remove the whole code. As shown below
Code:
.line 216
sget-object v0, Lcom/sec/android/provider/logsprovider/LogsProvider;->sURIMatcher:Landroid/content/UriMatcher;
const-string v1, "logs"
const-string v1, "sms"
const/16 v2, 0x9
invoke-virtual {v0, v3, v1, v2}, Landroid/content/UriMatcher;->addURI(Ljava/lang/String;Ljava/lang/String;I)V
Save the file and close it.
Now compile back apk file and push back to system/app.
3. CRT OFF ANIMATION.
Decompile framework-res.apk with apktool or similar.
Go to framework-res.apk\res\values\ and open bools.xml with notepad++
Search for line
Replace true with false. As shown below
Save the file and close it.
Now compile back apk file and push back to system/framework.
Now open your build.prop with root explorer or similar on your phone.
search for
add # infront of this line. Like this
save it and restart your phone.
[/LIST]
Click to expand...
Click to collapse
your crt animation mod is incomplete....
after recompiling the modded framework.res.apk you have to put META-INF from original apk to the modded one
otherwise you will get bootloops
and mod for sms provider.apk is fabulous
thnks for that too:good:

[How to] Merge current and ongoing notification [JB]

Hi xda friends
today i want to share a simple guide with you (How to merge ongoing and current notification) if you find any guide like this plz inform me.
Requirements:
- ApkMultiTools (search around xda and thanks tool developers)
- Notpad ++ (better for opening xml files)
OK let's start:
- Decompile SystemUI.apk
- Go to res\layout
- open tw_status_bar_expanded.xml with Notpad++
- find this line
Code:
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
- Cut and paste just above this to line
Code:
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
- still on tw_status_bar_expanded.xml find this line:
Code:
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
- Replace with this line:
Code:
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
- final your edited file should be like this:
Code:
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff293945" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="0.0dip">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff293945" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_expanded_notification_category_height">
<RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
<TextView android:textSize="@dimen/status_bar_expanded_notification_clear_button_text_size" android:textColor="@color/tw_status_bar_clear_btn_text" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="@dimen/status_bar_expanded_clear_button_width" android:layout_height="fill_parent" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
</RelativeLayout>
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
</LinearLayout>
-recompile and push to system\app folder change permission to rw-r--r--
- Enjoy
Once more
Reserved
Hi could.you please take a screenshot after you have done the mod so I can see what it does thanks in advance
Sent from my Galaxy Nexus using XDA Premium 4 mobile app

Q..How To Add Volume Slider And Other Sliders In StatusBar??

Any Buddy Give A Guide
brightness slider
http://forum.xda-developers.com/showthread.php?t=2152370
other sliders decompile my systemui from this statusbar
http://forum.xda-developers.com/showpost.php?p=46189065&postcount=2
copy all the smali from
smali\com\b16h22\statusbar to your status bar
add the pngs you want to put next to the slider
recompile the apk and then decompile the new apk to add the pngs to the public.xml
find the public values for the pngs and change the values in the smali with the public values (the smali isnt big so its easy to scroll through each one to find the old value - for example my MediaVolumeSlider.smali is 0x7f020093 so change that value with the value from your public.xml for the name of your png)
you will then need to add a 2nd panel to your status bar - there are various guides but I used
http://forum.xda-developers.com/showthread.php?t=2315342
you can then add all the sliders to the 2nd panel by adding it to that panel xml file
for example quickpanel_quick_settings_space.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:gravity="center" android:orientation="horizontal" android:background="@drawable/status_bar_background" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="3.0dip">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="wrap_content" android:overScrollMode="ifContentScrolls">
<LinearLayout android:gravity="center" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="System Brightness" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.lidroid.systemui.quickpanel.BrightnessSlider android:gravity="center" android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:paddingLeft="3.0px" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_brightness" />
<SeekBar android:tag="slider" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" />
</com.lidroid.systemui.quickpanel.BrightnessSlider>
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Ringer Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.RingerVolumeSlider android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="System Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.SystemVolumeSlider android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Notification Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.NotificationVolumeSlider android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Media Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.MediaVolumeSlider android:layout_width="fill_parent" android:layout_height="40.0dip" />
</LinearLayout>
</ScrollView>
</LinearLayout>
</LinearLayout>
marcussmith2626 said:
brightnless slider
http://forum.xda-developers.com/showthread.php?t=2152370
other sliders decompile my systemui from this statusbar
http://forum.xda-developers.com/showpost.php?p=46189065&postcount=2
copy all the smali from
smali\com\b16h22\statusbar to your status bar
you will then need to add a 2nd panel to your status bar - there are various guides but I used
http://forum.xda-developers.com/showthread.php?t=2315342
you can then add all the sliders to the 2nd panel by adding it to that panel xml file
for example quickpanel_quick_settings_space.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:gravity="center" android:orientation="horizontal" android:background="@drawable/status_bar_background" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="3.0dip">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="wrap_content" android:overScrollMode="ifContentScrolls">
<LinearLayout android:gravity="center" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="System Brightness" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.lidroid.systemui.quickpanel.BrightnessSlider android:gravity="center" android:layout_width="fill_parent" android:layout_height="wrap_content">
<ImageView android:paddingLeft="3.0px" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_brightness" />
<SeekBar android:tag="slider" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" />
</com.lidroid.systemui.quickpanel.BrightnessSlider>
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Ringer Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.RingerVolumeSlider android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="System Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.SystemVolumeSlider android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Notification Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.NotificationVolumeSlider android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Media Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.MediaVolumeSlider android:layout_width="fill_parent" android:layout_height="40.0dip" />
</LinearLayout>
</ScrollView>
</LinearLayout>
</LinearLayout>
Click to expand...
Click to collapse
Thnx+pressed....
can you tell me how to add only volume/media volume slider only...i wanna add below the brightness slider....or i will add volume slider by adding slideable mods to it
Himan Boro said:
Thnx+pressed....
can you tell me how to add only volume/media volume slider only...i wanna add below the brightness slider....or i will add volume slider by adding slideable mods to it
Click to expand...
Click to collapse
copy MediaVolumeSlider.smali MediaVolumeSlider$2.smali MediaVolumeSlider$1.smali
from smali\com\b16h22\statusbar to your status bar (to same location)
add the pngs you want to put next to the slider to res/drawable-ldpi
recompile the apk and then decompile the new apk to add the pngs to the public.xml
find the public values for the pngs and change the values in the smali with the public values (the smali isnt big so its easy to scroll through each one to find the old value - for example my MediaVolumeSlider.smali is 0x7f020093 so change that value with the value from your public.xml for the name of your png)
add the following to which ever xml you want where you want the slider to be
Code:
<LinearLayout android:gravity="center" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Media Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.MediaVolumeSlider android:layout_width="fill_parent" android:layout_height="40.0dip" />
</LinearLayout>
you can remove the textview if you dont want any text above the slider and you can remove the linearlayout if you are adding to an existing linearlayout or you can leave it as it is to give it its own dependinig on how you want it to look
marcussmith2626 said:
copy MediaVolumeSlider.smali MediaVolumeSlider$2.smali MediaVolumeSlider$1.smali
from smali\com\b16h22\statusbar to your status bar (to same location)
add the pngs you want to put next to the slider to res/drawable-ldpi
recompile the apk and then decompile the new apk to add the pngs to the public.xml
find the public values for the pngs and change the values in the smali with the public values (the smali isnt big so its easy to scroll through each one to find the old value - for example my MediaVolumeSlider.smali is 0x7f020093 so change that value with the value from your public.xml for the name of your png)
add the following to which ever xml you want where you want the slider to be
Code:
<LinearLayout android:gravity="center" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textColor="#ffffffff" android:paddingLeft="3.0dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Media Volume" android:shadowColor="#aa000000" android:shadowDx="1.0" android:shadowDy="1.0" android:shadowRadius="1.0" />
<com.b16h22.statusbar.MediaVolumeSlider android:layout_width="fill_parent" android:layout_height="40.0dip" />
</LinearLayout>
you can remove the textview if you dont want any text above the slider and you can remove the linearlayout if you are adding to an existing linearlayout or you can leave it as it is to give it its own dependinig on how you want it to look
Click to expand...
Click to collapse
yes..i tryd d same method by myself ..all wer corect excpt the public.xml so i got fc
It works bro..n i edit some pngs n Linear lines ... how to remove that Square box..beside the volume slider.
Himan Boro said:
It works bro..n i edit some pngs n Linear lines ... how to remove that Square box..beside the volume slider.
Click to expand...
Click to collapse
its part of the smali I think so best to ask b16h22
it just locks the slider if its ticked so you cant accidently change it
marcussmith2626 said:
its part of the smali I think so best to ask b16h22
it just locks the slider if its ticked so you cant accidently change it
Click to expand...
Click to collapse
ok..bro let it be like tht only Thanx again

[Guide] Center and Right Clock Mods for Pie

There has been some confusion about the ability to have a true center clock for Pie due to the notch made for Pixel 3 XL. This guide will show you how to center the clock and also move it to the right assuming you know how to decompile and recompile your SystemUIGoogle.apk. Find the statusbar.xml in the res/layout folder.
Center Clock
Find the code for the clock:
Code:
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="start|center" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" android:paddingStart="@dimen/status_bar_left_clock_starting_padding" android:paddingEnd="@dimen/status_bar_left_clock_end_padding" />
Copy/Cut it and move it to just under this code which is located near the top:
Code:
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
Remove the padding from the clock's code. Change the android:gravity from start|center to just center and change the android:layout_width from wrap_content to fill_parent. The resulting clock code will read like this:
Code:
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="center" android:id="@id/clock" android:layout_width="fill_parent" android:layout_height="fill_parent" android:singleLine="true" />
The entire statusbar.xml will now look like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="@drawable/system_bar_background" android:focusable="false" android:descendantFocusability="afterDescendants" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_height" android:accessibilityPaneTitle="@string/status_bar"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="center" android:id="@id/clock" android:layout_width="fill_parent" android:layout_height="fill_parent" android:singleLine="true" />
<ImageView android:id="@id/notification_lights_out" android:paddingBottom="2.0dip" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:paddingStart="@dimen/status_bar_padding_start" />
<LinearLayout android:orientation="horizontal" android:id="@id/status_bar_contents" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingStart="@dimen/status_bar_padding_start" android:paddingEnd="@dimen/status_bar_padding_end">
<ViewStub android:id="@id/operator_name" android:layout="@layout/operator_name" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<FrameLayout android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<include layout="@layout/heads_up_status_bar_layout" />
<LinearLayout android:id="@id/status_bar_left_side" android:clipChildren="false" android:layout_width="fill_parent" android:layout_height="fill_parent"> <com.android.systemui.statusbar.AlphaOptimizedFrameLayout android:orientation="horizontal" android:id="@id/notification_icon_area" android:clipChildren="false" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
</FrameLayout>
<android.widget.Space android:gravity="center" android:id="@id/cutout_space_view" android:layout_width="0.0dip" android:layout_height="fill_parent" /> <com.android.keyguard.AlphaOptimizedLinearLayout android:gravity="end|center" android:orientation="horizontal" android:id="@id/system_icon_area" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<include layout="@layout/system_icons" /> </com.android.keyguard.AlphaOptimizedLinearLayout>
</LinearLayout>
<ViewStub android:id="@id/emergency_cryptkeeper_text" android:layout="@layout/emergency_cryptkeeper_text" android:layout_width="wrap_content" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.PhoneStatusBarView>
Right Clock
Find the code:
Code:
<com.android.keyguard.AlphaOptimizedLinearLayout android:gravity="end|center" android:orientation="horizontal" android:id="@id/system_icon_area" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
and change it to this:
Code:
<com.android.keyguard.AlphaOptimizedLinearLayout android:orientation="horizontal" android:id="@id/system_icon_area" android:layout_width="wrap_content" android:layout_height="fill_parent">
Just under that code will be this:
<include layout="@layout/system_icons" />
Immediately under that code add this:
Code:
<android.widget.Space android:gravity="center" android:id="@id/cutout_space_view" android:layout_width="0.0dip" android:layout_height="fill_parent" />
Now for the clock code. Like the center clock mode copy/cut the clock code and place it immediately under the above code you just added. Remove the existing padding and replace it with this:
Code:
android:paddingLeft="4.0dip"
so that the entire clock code reads like this:
Code:
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="start|center" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingLeft="4.0dip" android:singleLine="true" />
And the finished statusbar.xml should read like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:id="@id/status_bar" android:background="@drawable/system_bar_background" android:focusable="false" android:descendantFocusability="afterDescendants" android:layout_width="fill_parent" android:layout_height="@dimen/status_bar_height" android:accessibilityPaneTitle="@string/status_bar"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<ImageView android:id="@id/notification_lights_out" android:paddingBottom="2.0dip" android:visibility="gone" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="fill_parent" android:src="@drawable/ic_sysbar_lights_out_dot_small" android:scaleType="center" android:paddingStart="@dimen/status_bar_padding_start" />
<LinearLayout android:orientation="horizontal" android:id="@id/status_bar_contents" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingStart="@dimen/status_bar_padding_start" android:paddingEnd="@dimen/status_bar_padding_end">
<ViewStub android:id="@id/operator_name" android:layout="@layout/operator_name" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<FrameLayout android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
<include layout="@layout/heads_up_status_bar_layout" />
<LinearLayout android:id="@id/status_bar_left_side" android:clipChildren="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.AlphaOptimizedFrameLayout android:orientation="horizontal" android:id="@id/notification_icon_area" android:clipChildren="false" android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0" />
</LinearLayout>
</FrameLayout>
<android.widget.Space android:gravity="center" android:id="@id/cutout_space_view" android:layout_width="0.0dip" android:layout_height="fill_parent" />
<com.android.keyguard.AlphaOptimizedLinearLayout android:orientation="horizontal" android:id="@id/system_icon_area" android:layout_width="wrap_content" android:layout_height="fill_parent">
<include layout="@layout/system_icons" />
<android.widget.Space android:gravity="center" android:id="@id/cutout_space_view" android:layout_width="0.0dip" android:layout_height="fill_parent" />
<com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:gravity="start|center" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingLeft="4.0dip" android:singleLine="true" /> </com.android.keyguard.AlphaOptimizedLinearLayout>
</LinearLayout>
<ViewStub android:id="@id/emergency_cryptkeeper_text" android:layout="@layout/emergency_cryptkeeper_text" android:layout_width="wrap_content" android:layout_height="fill_parent" />
</com.android.systemui.statusbar.phone.PhoneStatusBarView>
What do you recommend to decompile and recompile.
Sent from my [device_name] using XDA-Developers Legacy app
jd1639 said:
What do you recommend to decompile and recompile.
Sent from my [device_name] using XDA-Developers Legacy app
Click to expand...
Click to collapse
Ticklemyandroid
I also recommend apktool 2.3.2
https://forum.xda-developers.com/showthread.php?t=1633333
Thanks for the guide..
Is it possible to hide the Status Bar clock in the lockscreen?

Categories

Resources