[Hero CDMA Android Development] flipzmode:
Geek For Me is proud to release:

Fresh Hero 2.4.0 for your Sprint Hero

Need help? Problems? Bugs?

Forum

Bugs

Change log

Base: RUU_Hero_C_Sprint_2.27.651.6

This is just a maintenance release to keep your phone updated and running smoothly.

Changes from 2.3.3 to 2.4.0

:

Updated DarkTremor apps2sd to 2.7.5 RC3 build C

Updated SuperUser to 2.3.4

Updated ES File Explorer to 1.4.5

Updated LauncherPro to 0.7.6.0

Updated Google maps to 4.4.0

Removed Facebook App

If you already have it installed then this won't remove it. If you want to install it later then just grab it off the market.

Changes from 2.1 to 2.3.3

:

Based on the 2.27.651.6 RUU

Added Fresh Updater! Check the How To for information on setting it up and using it. This project has been on the back burner for months, and I’m happy to finally have brought it back and finished it up. Thanks to cyanogen and firefart as it’s based on CMUpdater. Use Fresh Updater to enable the vanilla lock screen.

270 degree auto-rotation (you can turn the phone to the right or the left for landscape) — Thanks to Optedoblivion for pointing me in the right direction.

11 new Rosie widgets. 7 that are available for our phone and 4 that aren’t.*

Profiles, ringtone, battery, call mom, coin flip, daily challenge, dice, notes, quick record, tasks, tip calculator.

These are made by HTC and will only work in Rosie.

Added FriendStream and Widget. Thanks to jschisurf for his help with that.

Added SuperUser 2.1 by chainsdd

HTC_IME Mod High Res v.27 keyboard -- This keyboard has a ton of features. I have included this keyboard and the stock one. To change which keyboard you use just do a long press on a text input field.

All APK's have been png optimized and zipalign'd

png optimize goes through every APK and losslessly compresses the png (picture) files without causing any type of visual change. This provides a smaller apk file size that loads faster. Each APK has then been zipalign'd. From Android's developer page: zipalign is an archive alignment tool that provides important optimization to Android application (.apk) files. The purpose is to ensure that all uncompressed data starts with a particular alignment relative to the start of the file. Specifically, it causes all uncompressed data within the .apk, such as images or raw files, to be aligned on 4-byte boundaries. This allows all portions to be accessed directly with mmap() even if they contain binary data with alignment restrictions. The benefit is a reduction in the amount of RAM consumed when running the application.

While this does free up space on /system it is not done to make free space. It is done purely for a performance gain. Every day use of the phone will go smoother and stock applications will respond faster. The reason this works is because it has reduced the application file size as much as 50%, so they load in to memory faster and run smoother.

Additionally all applications in /data/ (even ones you downloaded) will be zipalign'd on boot if they need to be.

Not every apk takes png optimization + zip align well. I've done it on enough roms that I think I know which ones cause issues now, but if you are getting FC's on any apps (I can't test them all) then let me know and I'll get it resolved. Thanks!

Entire rom has been resigned.

Major thanks to jschisurf for help on this. The process changed from Android 1.5/2.0.1 and I was getting errors where I had previously never had problems. He helped me figure out what I was doing wrong. :)

Resigning all the apks allows for non-standard apps to be used (like FriendStream) and also provides a standard based for modding apks.

Apps2sd updated to Darktremor 2.7.5p2 by tkirton.

Apps2sd takes all applications from /data/app and /data/app-private and moves them to a partition on your sdcard. This allows you to store more apps on your phone and also allows you to restore your phone and keep all your apps in tact (albeit with all settings lost). Although sometimes wiping sd:ext is required too.

You do not have to use apps2sd if you don't want to use it. If you just don't format your sdcard with an ext partition (leave it all as fat32 like it is from the factory) then apps2sd will stay turned off.

How to setup apps2sd on Fresh and warnings about apps2sd

Battery optimizations

Raised VM kernel dirty page writeback frequency to 15 seconds. This wakes the phone up less often for background VM activity. Every single application in Android is technically running in a VM (virtual machine) so that's why this helps (as recommended by lesswatts.org).

Updated Google Maps to 4.3.0

Updated Launcher Pro to 0.6.5.1

Updated Estrongs (ES) File Explorer to 1.4.2.2

Wifi Tether 1.6 -- This is not the newest version but in my experience it works best on the Hero. If you are getting a FC in wifi tether then it's because you have another copy of it in /data/ with a different name. Therefore you ended up with two copies. Remove one of them and reboot.

Facebook moved to /data/ so that it can be uninstalled

Dancing droid boot screen thanks to wrx4memp!

Added PowerTOP 1.11. From LessWatts.org: Programs can make your [phone] use more power. PowerTOP is a Linux tool that helps you find those programs that are misbehaving while your [phone] is idle. — Compiled by cyanogen.

To run PowerTOP just open an adb shell and type: "powertop -d". It will scan for 15 seconds and then print out a report.

The first section will show you what % of time your phone spent running at what Mhz. Ignore the Mhz in the screenshot above because it's from my Evo so it will look a little different on the Hero.

The next section shows wakeups-from-idle per second. 50-80 would be normal. If you are in that range then you don't have a problem.

The next list is the top causes for wakeups. Compare your list to mine (I only showed the top 3).

All the way at the bottom it will have optimizations that can be made to lower power use. These changes can not be made to the rom itself, they must be made to the kernel. While other roms claim they made changes to the kernel, if they are using the stock kernel (if they aren't over-clockable then they are using the stock kernel) then they didn't. While there is a kernel source available to us, I have chosen to continue using the stock kernel until our official source is released by HTC for stability reasons.

I have chosen to NOT include adless browsing in my rom. I used adless browsing in all of my Hero Android 1.5 roms because it actually blocked ads from the browser. In Android 2.1 this functionality stopped working so I stopped including it. It was pointed out to me that while it doesn't block them in the browser, it does block them in apps (background data). The reason I am choosing to not include this is because as a developer myself, I feel that the authors deserve to get paid for what they do if you want to use their app. If you are choosing to use their free ad-driven application then I don't want to contribute to people blocking those ads and preventing the dev from getting paid.

Stock vanilla lock screen has been customized in the following ways:

Fixed to work properly by flipz

Emergency button showing up after airplane mode fix by flipz

Menu-menu to unlock disabled by flipz

Clock / Sprint / other misc stuff removed thanks to jschisurf!

Added live wallpapers back to Rosie. :) . Keep in mind that you are using lwp "at your own risk." They may use more battery, they may cause wake issues. And only the lower end ones will work properly. This is not the fix that breaks opengl to allow you to use the more visual ones. Stick with the ones that just draw on the screen (a few are included).

flash_image for flashing RA

Quickboot works... for those who use it!

Espresso bottom bar in green

Full color sliders (see screen shots)

Removed (copied to /sdcard/fresh-removed-apks):

The following applications have been removed, however I am trying something new. I have the installer copy all of these applications to /sdcard/fresh-removed-apks. This will allow you to easily install the applications by clicking on them in ES File Explorer, or by copying them to /system/app for the ones that won't install that way (HTC's apps don't play nicely with installing). The applications marked with a * can be installed in one click by clicking on it in ES, the ones marked with # aren't included because they don't need to be reinstalled. The rest you will have to copy them to /system/app. This can be done by issuing the following commands:

Amazon mp3 *

GSD #

HTC Footprints and widget

HTC Mobile Guide (aka Learn More) *

HTC Navigation Panel

HTC Ringtone Trimmer

HTC Stocks and widget

IM

Quick Office *

SDSA (Sprint Self Service) *

Sprint Nascar *

Sprint Navigation *

Sprint NFL *

Teeter

What to expect / how to flash it / READ THIS :

Download and copy the zip to the root of your sdcard

Reboot to RA and do a data wipe / factory reset (REQUIRED)

You may also need to wipe sd:ext if you are having troubles booting.

If you are running Fresh Toast and ext4 then you'll need to partition back to ext3 if you want to use apps2sd

Pick flash zip from sdcard and select fresh-hero*.zip

After it finishes flashing reboot. Expect the first boot up to take a while.

If it boot loops over and over (you keep hearing the startup sound) then you didn't wipe everything.

When the phone boots and comes to the user setup screen I would recommend syncing your google account right away. I noticed an old bug creep back in where it gets stuck during sync. This seems to be avoided by adding your google account during setup.

The more social networking stuff you have setup (Facebook, twitter, friendstream, etc) the less battery life you will get. These programs do not have a "push" function and work by checking every single one of your contacts to see if they have an update.

DOWNLOAD: http://geekfor.me/hero/android21/fresh-hero-240/

Screen shots: