summaryrefslogtreecommitdiffstats
path: root/android
AgeCommit message (Collapse)AuthorFilesLines
2011-10-22Android: Work around an android bug.Thomas Martitz1-36/+53
BitmapFactory.decodeFile() fails when called outside the main thread. Work around by running the code on the main thread. This also has the advantage of off-loading from the Rockbox thread which should improve track skipping delays. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30825 a1c6a512-1295-4272-9138-f99709370657
2011-10-01Android: show Album Art in notification area.Dominik Riebeling2-8/+40
Instead of showing the small Rockbox clef logo show the Album Art if available. If no Album Art is available show the clef logo about the same size as the Album Art. - The notification area process doesn't have permissions to access the SD card. Therefore the image needs to be read and set as Bitmap instead of simply setting the Uri to it as done in the widget. - Passing a full sized image to the Notification Manager can cause issues (Rockbox UI hanging, notification not updating anymore, force closes). Scale down the image to the same size the launcher icon has to avoid this. This also makes the logo shown when no Album Art is available have the same size which looks nicer than having different sizes. Album Art images are allowed to be wider since there is enough room. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30629 a1c6a512-1295-4272-9138-f99709370657
2011-09-30Disable android status bar again, until we have a generic theme solution.Björn Stenberg1-0/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30620 a1c6a512-1295-4272-9138-f99709370657
2011-09-28Enable Android status bar.Björn Stenberg1-3/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30617 a1c6a512-1295-4272-9138-f99709370657
2011-09-08Fix toolchain installation.Dominik Riebeling1-1/+1
The filter for platform-tools is platform-tool, in contrast to the folder it installs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30483 a1c6a512-1295-4272-9138-f99709370657
2011-09-05Added 'platform-tools' to the features installed by installToolChain.sh for ↵Bryan Childs1-1/+1
the android build git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30431 a1c6a512-1295-4272-9138-f99709370657
2011-09-04Android: store resources on SD card.Dominik Riebeling1-2/+25
On the first start Rockbox extracts libmisc.so which in fact is a zip file holding resource files like theme bitmaps. Those can requires quite a bit of memory. As extended version of FS#12063 resources will now be extracted to SD card if the file /sdcard/rockbox/rockbox-info.txt is found. This file is part of the extracted resources and can therefore safely be used for checking. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30430 a1c6a512-1295-4272-9138-f99709370657
2011-08-20Android tools: Allow discovery of download URLsMaurus Cuelenaere1-14/+14
Automatically discover the latest and greatest version of the Android SDK and NDK by fetching it from the index. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30334 a1c6a512-1295-4272-9138-f99709370657
2011-08-14Android: Undo r30293 partly as it prevents installation.Thomas Martitz1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30299 a1c6a512-1295-4272-9138-f99709370657
2011-08-14Android: Fix a few java warnings. Upgrade ndk platform to 2.0 (don't support ↵Thomas Martitz3-7/+2
1.6 anymore). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30293 a1c6a512-1295-4272-9138-f99709370657
2011-07-19Android: Change headphone detection to call into native.Thomas Martitz1-3/+4
Making a JNI call from tick tasks is not permitted as the underlying thread is not attached to the Java VM. This is an error and crashes in the emulator (which has stricter JNI checks enabled by default). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30173 a1c6a512-1295-4272-9138-f99709370657
2011-07-18Android: Rework RunForegroundManager (again)Thomas Martitz3-66/+88
Restore pre-r29562 way of doing compatibility and adapt it to what MediaButtonReceiver looks like. I.e. assume the new API is there, and fall back to the old API if an exception is raised because the API isn't there. The old API still needs to be discovered through reflection because it's removed entirely from Honeycomb. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30165 a1c6a512-1295-4272-9138-f99709370657
2011-07-18Android: Fix long unnoticed typo in function call, leading to the wrong ↵Thomas Martitz1-1/+1
function being called. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30163 a1c6a512-1295-4272-9138-f99709370657
2011-07-18Forgot to add new class file in r30161.Thomas Martitz1-0/+44
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30162 a1c6a512-1295-4272-9138-f99709370657
2011-07-18Android: Slightly rework logging to logcat by offloading duplicated code to ↵Thomas Martitz5-35/+6
a new helper class. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30161 a1c6a512-1295-4272-9138-f99709370657
2011-07-18Android: Refactor some of the glue code.Thomas Martitz5-86/+140
* Cleanup RockboxService.java by moving the battery and headphone monitors to separate classes and detaching their instances * Move those monitors and RockboxTelephony.java into a new monitors subdirectory * Call those monitors all the same from native code by creating the objects there git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30160 a1c6a512-1295-4272-9138-f99709370657
2011-07-18Android: Fix sporadic force closes.Thomas Martitz1-1/+5
Android restarts services that are killed during memory pressure. The intent parameter is null then. This caused a null pointer exception. Now replace this null intent with one saying we've been restarted. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30156 a1c6a512-1295-4272-9138-f99709370657
2011-06-22Added NODEPS define to skip recompilation for zip and apk builds. Usage: ↵Björn Stenberg1-0/+4
make zip NODEPS=1 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30050 a1c6a512-1295-4272-9138-f99709370657
2011-06-11Support installing the Android toolchain on Cygwin and OS X.Dominik Riebeling1-5/+31
Update the download URLs to the most recent versions of SDK and NDK, the previously used r09 of the SDK isn't available at that location anymore, and differentiate between host platforms. Note: while the script now can install the toolchain on Cygwin building for Android on Cygwin does not work. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29993 a1c6a512-1295-4272-9138-f99709370657
2011-06-05Android: Greatly simplify the pcm callback mechanism on both, the Java and ↵Thomas Martitz1-6/+7
the C side. Should be more reliable now (if the old wasn't already). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29963 a1c6a512-1295-4272-9138-f99709370657
2011-06-04Hopefully FS#12064 - Android: Possible fix for audio stopping on high CPU load.Thomas Martitz1-52/+47
It's not enterly clear what fixed it but it seems to be a combination of increasing the buffer size and reducing the amount of code run in the callback. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29961 a1c6a512-1295-4272-9138-f99709370657
2011-06-04Android: listen to ACTION_AUDIO_BECOMING_NOISY for headphone (FS#12097).Dominik Riebeling1-0/+16
This event is sent before the audio is routed back to the speaker so we get the information about the unplugged headphone notably earlier. Decrease the debouncing of the headphone status from 1s to 0.5s to work around audio still getting played back via the speaker due to the pause delay by debouncing. On Android we shouldn't need the debouncing at all. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29957 a1c6a512-1295-4272-9138-f99709370657
2011-06-04Android: implement headphone detection thus enabling pause on unplug (FS#12097).Dominik Riebeling1-0/+21
Listen to headphone plug events. There are currently two glitches with this: - Android takes a while until it reports the unplug event, so there will be some delay until playback gets paused. This is an Android limitation. - Rockbox debounces headphone state changes for one second. Therefore playback will shortly be routed to the speaker on unplug until Rockbox does the actual pause. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29956 a1c6a512-1295-4272-9138-f99709370657
2011-06-04Android: adjust screen orientation based on LCD size.Dominik Riebeling1-1/+1
If the screen size specified is wider than higher specify the orientation as landscape in AndroidManifest.xml. This usually applies to tablets where Rockbox in portrait mode feels unnatural. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29951 a1c6a512-1295-4272-9138-f99709370657
2011-05-31Android: install codecs as native libs instead of extracting them (FS#12134).Dominik Riebeling1-0/+4
Codec files are loaded as dynamic libraries. Instead of extracting them from the packaged libmisc.so and therefore having them present twice on the device put them into the apk as native libraries. Decreases the size of the installed Rockbox by the compressed size of the codecs. Also, the extraction on first Rockbox startup gets notably faster since it's less data to extract. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29940 a1c6a512-1295-4272-9138-f99709370657
2011-05-29Android: rework r29929 AndroidManifest.xml version handling.Dominik Riebeling1-2/+2
Put the generated AndroidManifest.xml into the bin subfolder and remove it from clean list. Avoids problems with cleaning if you're building in the android/ folder. Thanks to kugel for pointing out that people are actually doing that. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29931 a1c6a512-1295-4272-9138-f99709370657
2011-05-29Add source tree version into AndroidManifest.xmlDominik Riebeling1-1/+6
Use the source tree version as versionName string. As result the Android Settings menu will now show that version instead of a rather unhelpful "1.0". git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29929 a1c6a512-1295-4272-9138-f99709370657
2011-05-13Rework MediaButtonReceiver a bit:Thomas Martitz2-19/+32
* Get rid of reflection since the lack of methods can be detected via exceptions * Use requestAudioFocus/abandonAudioFocus APIs on 2.2+ to play nice with other music apps. * Don't unregister the receiver on exit so we can receive media button presses (and startup the service) after idle poweroff (hopefully it's ok if mMediaButtonReceiver is garbage collected) This should fix that Android calls the standard music app sometimes when those buttons are pressed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29865 a1c6a512-1295-4272-9138-f99709370657
2011-04-21Use mkdir -p in the previous commit. Thanks sideral for spotting.Thomas Martitz1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29754 a1c6a512-1295-4272-9138-f99709370657
2011-04-21Android: Fix creation of debug key if ~/.android doesn't exist.Thomas Martitz1-0/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29753 a1c6a512-1295-4272-9138-f99709370657
2011-04-14Fix some whitespace errors.Dominik Riebeling1-60/+60
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29712 a1c6a512-1295-4272-9138-f99709370657
2011-03-31Only set volume on SYS_VOLUME_CHANGED the first time. Workaround for FS#12034.Björn Stenberg1-3/+13
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29663 a1c6a512-1295-4272-9138-f99709370657
2011-03-16Android: Implement app shutdown and thus, sleep timer.Thomas Martitz2-1/+16
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29602 a1c6a512-1295-4272-9138-f99709370657
2011-03-16Android: Fix widget albumart display on pre-2.2 devices.Thomas Martitz1-1/+4
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29600 a1c6a512-1295-4272-9138-f99709370657
2011-03-14Listen to and follow external Android volume changes. (Based on FS#11914 by ↵Björn Stenberg1-3/+49
Maurus Cuelenaere) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29586 a1c6a512-1295-4272-9138-f99709370657
2011-03-11Use the pcm volume to add finer steps between every android stream volume step.Björn Stenberg1-14/+37
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29573 a1c6a512-1295-4272-9138-f99709370657
2011-03-11Android: get rid of warnings (no functional changes)Maurus Cuelenaere6-20/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29566 a1c6a512-1295-4272-9138-f99709370657
2011-03-11Android: replace installApk.sh "launching Rockbox activity"-behaviour withMaurus Cuelenaere2-11/+3
'make launch' git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29565 a1c6a512-1295-4272-9138-f99709370657
2011-03-11Android: future-proof the RunForegroundManager code to HoneycombMaurus Cuelenaere1-87/+62
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29562 a1c6a512-1295-4272-9138-f99709370657
2011-03-11Android: update project to SDKv11Maurus Cuelenaere2-4/+4
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29561 a1c6a512-1295-4272-9138-f99709370657
2011-03-11Android port: generate initial config when none is present with dynamicallyMaurus Cuelenaere45-0/+198
generated values depending on your environment. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29560 a1c6a512-1295-4272-9138-f99709370657
2011-03-09Ask for track information to be resent after creating a new widget.Antoine Cellerier5-7/+33
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29553 a1c6a512-1295-4272-9138-f99709370657
2011-03-09Looks like Android 2.3 is more strict when enforcing permissions. Explicitly ↵Antoine Cellerier2-26/+25
declare allowed intents under the Service tag in AndroidManifest.xml. Remove useless rockbox intent class. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29552 a1c6a512-1295-4272-9138-f99709370657
2011-03-09Add a scrollbar to the android widget's configuration activity.Antoine Cellerier1-2/+6
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29551 a1c6a512-1295-4272-9138-f99709370657
2011-03-05Android: Add a nowplaying bar to the 3x3 widgetThomas Martitz2-1/+7
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29529 a1c6a512-1295-4272-9138-f99709370657
2011-02-27Android: Show cover art in the widget (including option to hide it).Thomas Martitz8-7/+38
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29437 a1c6a512-1295-4272-9138-f99709370657
2011-02-26Android: Add a 3x3 sized widget.Thomas Martitz5-0/+89
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29409 a1c6a512-1295-4272-9138-f99709370657
2011-02-26Android: Remove notification item on pausing too.Thomas Martitz2-7/+10
Technically, the difference between stop and pause isn't important enough to keep it when no music is playing. This is how other media apps also act. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29405 a1c6a512-1295-4272-9138-f99709370657
2011-02-26Android: Simplify media button intent generation in the widget and cleanup ↵Thomas Martitz4-52/+69
RockboxService accordingly. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29404 a1c6a512-1295-4272-9138-f99709370657
2011-02-23Android:Thomas Martitz4-94/+69
* Re-create RockboxFramebuffer instance with every time there's a new Activity. * Also, allow Rockbox to be started via multimedia buttons, immediately starting playback if wanted. We don't need to keep the fb instance around when it backround, and it makes us less depending on it and the activity (less race conditions). And this is how you usually do it in Android apps. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29384 a1c6a512-1295-4272-9138-f99709370657