Commit graph

179 commits

Author SHA1 Message Date
Thomas Martitz
a994401294 Extend make clean for android zu also cleanup the compiled java classes and apks (and everything else generated during build process).
This also seems to fix a problem with make apk on some machines. Thanks to Dustin Skoracki for helping to investigate.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28062 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 16:35:02 +00:00
Thomas Martitz
0e0baaa08e Android: Fix a problem where entered Rockbox multiple times (with multiple instances on the activity stack) until it was exited once with the back button.
Thanks to István Nagy for investigating and proposing this solution.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28060 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 09:50:45 +00:00
Thomas Martitz
cbbbe60dbf Use getMinBufferSize instead of hardcoding a buffer size.
Seems to fix problems on Samsung Galaxy S, thanks to István Nagy.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28059 a1c6a512-1295-4272-9138-f99709370657
2010-09-12 09:42:21 +00:00
Thomas Martitz
994aba194b Android: Allow "out-of-tree" builds (outside of android/, e.g. build-android/).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27988 a1c6a512-1295-4272-9138-f99709370657
2010-09-02 14:58:36 +00:00
Thomas Martitz
4e982d30a1 Extend android.make so that it can generate a debug signed apk.
'make && make apk && adb install -r bin/Rockbox.apk' should work now.

You should now be able to develop without eclipse.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27980 a1c6a512-1295-4272-9138-f99709370657
2010-09-02 03:40:02 +00:00
Thomas Martitz
f8381d9c39 Android: don't compile stubs.c and kill off libuisimulator entirely.
Seperate make rules in a almost empty android.make.
Also add forgotten powermgmt-android.c

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27977 a1c6a512-1295-4272-9138-f99709370657
2010-09-02 00:24:40 +00:00
Thomas Martitz
f05cdc46f2 Android: don't compile powermgmt-sim.c
Instead implement a bit of battery monitoring. Currently it only fetches the battery level (in %) every 30s,
but it could do more like battery status, charger connected, voltage...
Theoretically, we could also exit/quit after some time of inactivity too
(perhaps not a bad idea since Rockbox puts a slight but still non-zero CPU load even if doing nothing).

Ironically, Rockbox is now the only way to get the exact battery level (at least I haven't found anything yet) on my phone :-)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27974 a1c6a512-1295-4272-9138-f99709370657
2010-09-01 23:36:15 +00:00
Maurus Cuelenaere
0e563eae3e Android port: also include native libraries in APK file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27840 a1c6a512-1295-4272-9138-f99709370657
2010-08-17 21:13:13 +00:00
Maurus Cuelenaere
cc5f016835 Android port: add build script
This allows building the Java part of the port with only requiring the Android SDK + javac installed

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27839 a1c6a512-1295-4272-9138-f99709370657
2010-08-17 21:06:58 +00:00
Maurus Cuelenaere
e39640352e Android port: allow moving application to SD card on Froyo targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27834 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:47:46 +00:00
Maurus Cuelenaere
5068891477 Android port: simplify sending touch events from Java->C
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27833 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:12:10 +00:00
Maurus Cuelenaere
934a5a5808 Android port: add support for hardware keys
* Forward Java KeyEvents to C layer and translate them to Rockbox BUTTON_*.
 * Add a basic Android keymap

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27832 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:12:06 +00:00
Maurus Cuelenaere
e726e53da6 Android port: use Arrays.fill() instead of a for-loop for clearing a byte array
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27831 a1c6a512-1295-4272-9138-f99709370657
2010-08-16 20:12:01 +00:00
Thomas Martitz
4a3e6dbe8f A bit of cleanup.
Replace // with /* */ style comments
Cleanup copy&paste from the doc examples.
Don't pretend to handle exception we don't handle actually.
cleanup imports

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27754 a1c6a512-1295-4272-9138-f99709370657
2010-08-08 16:44:06 +00:00
Thomas Martitz
4aa3d01066 Run the pcm callback from a separate OS thread, that seems to make audio playback
much more reliable. Especially on the broken HTC phones. Now it recovers from
stuttering instead of simply stopping playback on my phone.

Previously it was run on the main/UI thread (the docs lie in that regard), which
I suspect happened to be blocked if it's in the background and tries to
get too much CPU.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27753 a1c6a512-1295-4272-9138-f99709370657
2010-08-08 15:53:02 +00:00
Thomas Martitz
8978b2bafa Android port: The RockboxService introduction broke 1.5/1.6 compability. This should bring it back (heaviliy based on the example given in the Android docs).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27748 a1c6a512-1295-4272-9138-f99709370657
2010-08-07 22:29:54 +00:00
Thomas Martitz
ca4439ff65 Android port: handle incoming calls.
Stop explicitely if a call comes in, and resume playback (if it was playing before the call) upon hang up.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27746 a1c6a512-1295-4272-9138-f99709370657
2010-08-07 21:30:22 +00:00
Thomas Martitz
6063e9138b Fix launcher icon (once more).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27733 a1c6a512-1295-4272-9138-f99709370657
2010-08-06 00:53:02 +00:00
Thomas Martitz
9dd48db22c Remove faulty reference to inexistent resource.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27730 a1c6a512-1295-4272-9138-f99709370657
2010-08-05 22:34:24 +00:00
Thomas Martitz
e8542efdb1 Update README a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27718 a1c6a512-1295-4272-9138-f99709370657
2010-08-05 12:15:30 +00:00
Thomas Martitz
83be40f7d3 Delete now unused icons.
Also, I of course meant Dominik Riebeling in my previous commit, sorry.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27700 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 20:38:25 +00:00
Thomas Martitz
5aa402315e Prettier icons for app launcher and notification bar.
Thanks to Rominik Riebeling for creating/converting them.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27699 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 20:34:16 +00:00
Thomas Martitz
bd9c0b21d6 A bit of work in the pcm driver. Should be a bit more efficient, but more importantly more dependable. Stopping playback now properly recovers if playback crashed for some reason (shouldn't happen of course).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27698 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 18:34:32 +00:00
Thomas Martitz
546cd48504 Show/hide notification area icon when starting/stopping playback.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27694 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 14:34:26 +00:00
Thomas Martitz
04dc00b7ca Add a few forgotten files, Fix potential startup problem. Fix absolute touchscreen mode.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27693 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 12:25:25 +00:00
Thomas Martitz
594110e962 Implement HAVE_LCD_ENABLE and lcd_update_rect(). When Rockbox runs in the background
this greatly reduces CPU load. lcd_update_rect shoves a bit as well.

CPU usage with Rockbox in background is between 3% (with a 200kbps vbr mp3) and 12% (320kbps cbr mp3), so it's low but still dependent on codecs and even particular files.
Driving a WPS with peakmeter, e.g. the builtin one, adds about 30% cpu usage.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27689 a1c6a512-1295-4272-9138-f99709370657
2010-08-04 01:03:25 +00:00
Thomas Martitz
f66a233bdb Ignore screen orentiation changes and force portrait mode. We cannot handle it any time soon anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27688 a1c6a512-1295-4272-9138-f99709370657
2010-08-03 23:23:33 +00:00
Thomas Martitz
9dd0158ffb Run Rockbox as a service, which allows for music decoding&playback in the background,
the activity only attaches to the framebuffer for displaying it. An icon
in the notification area is displayed (it could be prettier I guess).

Note: Some HTC phones won't, includng mine, get enough CPU time to do background decoding
fluently, see: http://code.google.com/p/android/issues/detail?id=9663

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27686 a1c6a512-1295-4272-9138-f99709370657
2010-08-03 22:56:24 +00:00
Thomas Martitz
240923a801 Rockbox as an application: Commit current Android port progress.
General state is: Rockbox is usable (plays music, saves configuration, touchscreen works too).
Problems:
 - Playing music in the background (i.e. when switching to another app) doesn't work reliably, but I'm working on that now.
 - no cabbiev2 (only some preliminary files for it), no other default theme.
 - screen flickers sometimes if the updates are too frequent
 - no multi screen apk/package
 - strange behavior when a phone call comes in

The java files (and the eclipse project) resides in android/, which is also supposed to be the build folder.
I've put a small README in there for instructions. There are some steps needed after the make part, which are described there,
and which eclipse mostly handles. But there ought to be some script/makefile rules which do that instead in the future.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27668 a1c6a512-1295-4272-9138-f99709370657
2010-08-02 20:34:47 +00:00