Evening folks. Got another release for you tonight!
Decent list of changes…
Further keyboard size fixes, should be perfect now (and goes fullscreen in landscape)
Updated Google apps package (Books phone version is now included)
Switched to GLES1.1 library with patches from bzo (you probably won’t see much difference here)
Phone app switched to touch-friendly in-call user interface (and fixed its layout on Raph)
Regressions from the last system image that were fixed:
Added the missing camera bits
Re-added a graphical speed-up that was accidentally lost in merge
A few of these changes are important.
The software keyboard should be considered functional (but with some small bugs) at this point. If you see any issues, please report them on the bug tracker after searching for them to make sure it’s not a dupe.
The Phone app change is important for a couple reasons. On Rhodium, this allows us to set the end-call key to Home without crippling the user in a call, since there’s now a nice big button on the screen for hanging up. This will be further improved by implementing the proximity sensor. Our support for VGA devices precluded using this UI due to the buttons blocking some of the dialpad keys in the in-call screen. This has been fine-tuned to be useful on both resolutions.
Google Apps speaks for itself. Updated stuff, woo.
Evening everybody. Got another testing image for you.
The accelerometer driver I’ve blogged about is now included in this build
Android codebase sync’ed to latest 2.3.3
Not included in this build is some preliminary work on GPS. It crashes Android (and freezes my RHOD400) so it’s been removed from the system image.
Proper hardware 3D driver provided in this system. Neocore still doesn’t work.
Gallery3D added to the build to test a possible fix for rotation issues. I’m mainly interested in results on RAPH.
Thanks again for everybody testing and providing feedback on these releases. This is signed so old data.img from our previous Gingerbread tester release may work. Again, if you have any problems, we suggest clearing out data.img before reporting them.
This is, of course, a work-in-progress build. Lots of things don’t work yet. However, what does work is working pretty well. Performance is either on-par with or an improvement over our Froyo versions. This is already a well-polished build. Gingerbread will be very nice when we get all the hardware support updated.
As I said, there is a lot that does not yet work at all. Here’s a list of known issues:
Google Apps will behave badly from time to time (arrrghhh noted blank window issues, for example)
GPS is not working (driver needs to be reimplemented) and Location services are generally missing as well
Accelerometer support is missing (driver needs to be reimplemented)
Bluetooth is not working, even on TI devices (crashes when activating – disabled in this build)
Other functionality and stability issues will occur
This has been signed with our release keys, which means you might be able to use a froyo data.img with it, but this is in no way supported (it’s a testing build after all). If you have issues with previous data images, start fresh and try again before reporting issues.
My previous Gingerbread-related post painted a grim picture of the progress I had been making up to that point. Little work had been done on stabilizing the system. Lots of features and hardware support were broken. In general, there was a ton of work to do.
Well, that work is getting done. Slowly, I’ve been working through the long list of issues and knocking out whatever I can in reasonably short time. We’re moving towards a completely unsupported prerelease system image meant for testing, probably within the next couple of weeks. Again, that would be completely unsupported and not an official release. We would not advertise it on any official release channels (wiki or forums).
With that out of the way, here’s a list of major fixes since my last post:
The severe drop in 2D performance has been fixed
The SD card is now visible within Android again
Screen backlight issues that I posted about are actually kernel-related auto-backlight issues on Raph/Diam/Blac only
Gingerbread’s strange sleep of death has been resolved
UPDATE: Audio is working
For developers: build system changes have been pushed to the repositories to allow you to build the system (gapps needs to be updated to generate working system images, though)
It’s been very slow around here lately. Being busy with work and holidays hurts productivity. However, I’m starting to get back into the groove.
Gingerbread is proving to be a beast to port. A lot has changed from Froyo and we’ll be left making square pegs fit in round holes. As usual, all old platforms have been abandoned, except for the venerable Nexus One of course. This makes it somewhat annoying to get all the older hardware working as it did in older versions.
Here’s an incomplete list of things which have broken in the upgrade to Gingerbread:
Severe drop in 2D graphics performance (a fix is in progress, pending testing and commit to our frameworks/base fork)
Existing sensors library is incompatible, so the accelerometer is not working
Location services crash the system during initialization (bootloop); additionally, removing Location provider causes Browser to crash at Google home page
Trying to activate bluetooth crashes the system
SD card is not visible (as mounted) in Android
Screen backlight stays on when it should sleep (display turns black)
Device hangs in sleep mode
There are other issues here and there that aren’t important or difficult enough to list here, or that I haven’t found yet. Also important to note is that I’ve been testing exclusively on a Raphael (ATT Fuze) so any issues with other platforms (Rhodium in particular) may not be found by me.
I’ll be working actively on these issues in the immediate future. Needless to say, the Gingerbread release is probably a long way off. There is a lot of work to be done, and unfortunately Gingerbread is mostly a solo effort by myself at the moment. If you’d like to help out, or if you know someone who can help, please drop by our IRC channel and join the development discussion. We need all the help we can get.
As I’ve mentioned before, development on porting the newest version of Android to our devices is underway. Last night was release day, so the work that I did was all on getting the build environment ready. Now that I’m able to build images, we now have to worry about bring-up on the actual hardware.
There are still some changes left to be pushed into the XDAndroid AOSP repositories, but most of the codebase that I’m using is already there. With every new version of Android, we need rootfs changes to add support, so that’s the next bit of code that has to be pushed (and it’s mostly completed now, waiting for me to push).
Today, I was able to get the system booted and semi-usable. After merging upstream configuration changes into the rootfs, the system entered boot animation without a hitch. Unfortunately the current version of Google Apps has one incompatible package (the Network Location provider) which caused a “bootloop”. After removing that package, it resolved the crash and the system booted normally.
There’s still no ETA on a release, of course, since a lot of work has to be done to get everything going. In short testing, I found that WiFi is no longer functional, the window manager is very slow, and as mentioned before the Google package has to be updated. There will also be a number of (expected) crashes involved with certain hardware functions, due to changes in software interfaces between the releases.
So, now that we have a running system, how about some pictures?
As the XDAndroid Twitter account has eluded to a short time ago, we have indeed begun official development on the new version of Android for our devices, gingerbread.
As development progresses, I will be updating the issues, successes and planning we have to do to get gingerbread running on our devices. Keep watching for new posts. Don’t forget, release announcements will always be made via the xda-developers forums and twitter. Thanks for using XDAndroid!