My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
Android  
Android client build and test instructions
Documentation, Development
Updated Mar 21, 2011 by obensonne@gmail.com

The Android client for Remuco is work in progress, but basic features already work. Following you'll find some instructions to build and test the latest Android client from the source.

Outline

Prerequisites

You will need a few things to compile the Android client.

  • A working Android SDK ≥ 8 with at least one target environment already created (at least one VM). See the Android SDK docs for details.
  • A few dependencies from your linux distribution:
    • mercurial (the soruce control tool used by Remuco)
    • sun-java6-jdk (might be on an archive that is not available by default on your distribution, as it's not entirely free software)
    • ant ("make" for Java)

Setup the build environment

Pull the Remuco source:

$ hg clone https://remuco.googlecode.com/hg/ remuco

Go in the root directory for the android client:

$ cd remuco/client/android

You will have to create a file named local.properties to tell your compiler where all the Android SDK stuff is located. Thankfully, there is already a file named local.properties.exemple wich you can just copy/paste or rename as local.properties after you have edited it. If you installed the Android SDK in your home directory, it might look like this:

sdk.dir=/home/john/android-sdk-linux_86

Change that to suit your needs.

Now you are ready to compile your Android Client and create the APK file you need to install on your phone or to test the client in the emulator.

Building

If you run

$ ant debug

an APK file named Remuco-debug.apk (or Remuco-unsigned.apk) will be created in the bin sub-directory.

Run the client on a real device

Transfer the built APK file to your phone, e.g. using a USB connection. On the phone, browse to the location where you copied the APK file to and install it (choose your favorite file explorer).

Your phone will complain about the fact that the application comes from an untrusted source (i.e. not from the Market). In order to install it anyway, you'll have to enable the possibility to install such applications in the phone's settings. The corresponding option is located at SettingsApplicationsUnknown Sources (or whatever it is called in your locale).

Once installed, start the Remuco application and choose your favorite connection method, WiFi or Bluetooth. For the first method, you'll have to know your computer's IP address within your local network.

Run the client in the emulator

Please check the official Android SDK docs.

Once installed on an emulated device, start the Remuco app in the emulated device and connect via WiFi to 10.0.2.2 (this refers to localhost of your machine running the emulator).

Developer information

Though the Android Eclipse plugin is a good way to develop for Android, the client/android folder should not contain IDE specific files - it should always be possible to build the Android client using the Ant build.xml file only.

Comment by billygot...@gmail.com, Jun 8, 2010

Hmm! I get this error message when running '$ ant debug':

Buildfile: build.xml

BUILD FAILED /home/<username>/remuco/client/android/build.xml:65: Unable to resolve target 'android-3'

Total time: 0 seconds

Any ideas?

Comment by xuanbo89@gmail.com, Jun 9, 2010

@billygotmail: I had the same problem and i fixed it, try this (sorry for my English, it's not good): In the "SDK Readme.txt" file of the Android SDK tool was wrote: "To start the SDK Manager, please execute the program "tools/android".

From the command-line you can also directly trigger an update by executing:

tools/android update sdk"

=> So you must cd to folder "android-sdk-linux_86" and excute the command below in your terminal:

tools/android update sdk
=> It'll launch in GUI and you need update the SDK. If it doesn't work with https link, you can change it to http link by: Go to Settings options, at the Misc tab, tick at "Force https://... to be fetched using http://..." and update again. After all finish, you can run the command "ant debug" to build an android client for this app. Good luck!

Comment by billygot...@gmail.com, Jun 10, 2010

OK, it worked. Awesome. :)

Comment by francois...@gmail.com, Jun 16, 2010

Hi, I've update my android sdk, but there's another problem. It seem to be a java compilation error ; see the log :

$ ant debug Buildfile: build.xml

setup? Android SDK Tools Revision 6 setup? Project Target: Android 1.5 setup? API level: 3 setup? WARNING: No minSdkVersion value set. Application will install on all Android versions.

dirs:

echo? Creating output directories if needed...

resource-src:

echo? Generating R.java / Manifest.java from the resources...

aidl:

echo? Compiling aidl files into Java classes...

compile:

javac? Compiling 46 source files to /opt/android-sdk-linux_86/projects/remuco/client/android/bin/classes

BUILD FAILED java.lang.NoClassDefFoundError?: gnu/classpath/Configuration

at com.sun.tools.javac.Main.<clinit>(Main.java:66) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:186) at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory?.doesModernCompilerExist(CompilerAdapterFactory?.java:145) at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory?.getCompiler(CompilerAdapterFactory?.java:100) at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1058) at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:882) at org.apache.tools.ant.UnknownElement?.execute(UnknownElement?.java:288) at sun.reflect.GeneratedMethodAccessor1?.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl?.invoke(DelegatingMethodAccessorImpl?.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.apache.tools.ant.dispatch.DispatchUtils?.execute(DispatchUtils?.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) at org.apache.tools.ant.Project.executeTarget(Project.java:1306) at org.apache.tools.ant.helper.DefaultExecutor?.executeTargets(DefaultExecutor?.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1189) at org.apache.tools.ant.Main.runBuild(Main.java:758) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Caused by: java.lang.ClassNotFoundException?: gnu.classpath.Configuration
at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController?.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader?.loadClass(ClassLoader?.java:321) at java.lang.ClassLoader?.loadClass(ClassLoader?.java:266) at java.lang.ClassLoader?.loadClassInternal(ClassLoader?.java:334) ... 23 more

Total time: 0 seconds

Comment by project member olivier....@gmail.com, Jun 17, 2010

@françois : I tried with a purely open Jdk from my distrib (open jdk) and it failed with that kind of errors. I had to install the JDK provided by SUN. Which one did you use?

Comment by francois...@gmail.com, Jun 22, 2010

@olivier : I've install java with KpackageKit? from Kubuntu.. I think, there's not the SUN version ! $ java -showversion java version "1.6.0_18" OpenJDK Runtime Environment (IcedTea6? 1.8) (6b18-1.8-0ubuntu1) OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode)

Comment by yjrega...@gmail.com, Aug 16, 2010

Hello, I managed to get the remuco android to compile got my apk file download it to the phone. Select the parameters for non market application. But when trying to install on my htc hero it begins and the say application not installed with no special error message... Help ...

Comment by yjrega...@gmail.com, Aug 17, 2010

Ok figured it out application need to be signed even if the non market option is checked working now...

Comment by pstevens...@gmail.com, Aug 28, 2010

OK, I built and installed on my Galaxy S Captivate. At first it complained about not finding the proper "jre" so I just exported the proper path for Sun Java6 and it built fine

$ export JAVA_HOME=/usr/lib/jvm/java-6-sun/jre

  1. he stars are slightly obscured by shuffle and repeat buttons
  2. he "Rate Song" dialog does not fit in portrait mode
  3. he stars are also obscured in dialog box (both portrait and landscape)
  4. lbum art fails to load if there are the following characters in the file path. á é It displays the characters properly in the song names and titles
  5. n the "connect to Remuco" dialog the OK and Cancel buttons seem a little too close. maybe they could be equally sized like the shuffle and repeat buttons or just pushed far right and left.

This is a very cool project. thanks for all the hard work.

Comment by yjrega...@gmail.com, Sep 9, 2010

Hi all, I'd like to try, I'm a real beginner, to help developp remuco android. I managed to compile the sources using instruction above and ran it on my htc hero. Now I'm trying to set it up as a project in eclipse but I don't know how to add the common sources so that it doesn't show errors on imports of these feature. A guide on how to set up the project in eclipse would be really nice ... Thanks already for the work done...

Comment by Keanu.De...@gmail.com, Sep 10, 2010

Hello,

And why is there no ready to use apk available ? Like many people, I'm not into Compiling, installing SDK, ... i'm just a linux and android user. And when I look at the comments above, I notice that a lot of guys who tried had problems.

So, can someone put a ready apk for this remuco client for android 2.2 ?

Thank you very much for your understanding.

Comment by Mes...@gmail.com, Oct 6, 2010

Thanks a lot for a great program.. I used to have it on my Nokia, now I am try with my HTC Desire.. I get this strange error:

resource-src:

echo? Generating R.java / Manifest.java from the resources... exec? W/asset ( 9395): Asset path /home/magnus/playground/remuco093/remuco-0.9.3/client/android/${android-jar} is neither a directory nor file (type=1). exec? ERROR: Asset package include '/home/magnus/playground/remuco093/remuco-0.9.3/client/android/${android-jar}' not found.

Anyone has a good idea?

Comment by deathofs...@gmail.com, Oct 11, 2010

I'm getting the same error.

resource-src:

echo? Generating R.java / Manifest.java from the resources... exec? W/asset ( 2957): Asset path /home/rain/.remuco/client/android/${android-jar} is neither a directory nor file (type=1). exec? ERROR: Asset package include '/home/rain/.remuco/client/android/${android-jar}' not found.

BUILD FAILED /home/rain/.remuco/client/android/build.xml:151: exec returned: 1

Comment by anyrem...@mail.ru, Oct 22, 2010

>ERROR: Asset package include '/home/rain/.remuco/client/android/${android-jar}' >not found Try to run: cd <path-to-remuco>/client/android android update project --name Remuco --target 1 --path .

Comment by anyrem...@mail.ru, Oct 22, 2010

In addition i have to link common/src/remuco/client/common to android/src/remuco/common/client

Comment by skar...@gmail.com, Nov 4, 2010

I'm using Ubuntu 10.10 and Android 2.2.1 OpenEtna? rc3 / CyanogenMod?-6.1 on a GW620

I had some of the same issues as above.

If you have added your android-sdk-linux_x86/tools directory to the PATH Environment Variable properly then you can update the android sdk.

android update sdk

Once you have downloaded and installed the suggested packages change directory in to the remuco/client/android directory and run the project update

cd <path-to-remuco>/client/android

android update project --name Remuco --target 1 --path .

(Including the trailing .)

then link "client/common" to "common/client" with

ln -s "<path-to-remuco>/client/common/src/remuco/client/common" "<path-to-remuco>/client/android/src/remuco/common/client"

after that try compiling again.

adb debug

Send it to your phone anyway you deem fit then run the apk file on your phone.

(Don't forget to install the remuco servers, they're in the Ubuntu repos)

Comment by mrsnowfl...@gmail.com, Nov 15, 2010

Thanks skarard

Comment by mirek.bu...@gmail.com, Dec 1, 2010

skarard,

I've done all of the above and still get the ".remuco/client/android/${android-jar}' not found" error

Actually, i linked as follows

ln -s "<path-to-remuco>/client/common/src/remuco/client/common" "<path-to-remuco>/client/android/src/remuco/client/android"

That was the path to Remuco.java, etc.

I'm also assuming that your "adb debug" should be "ant debug"

Comment by bigbro...@gmail.com, Feb 18, 2011

why can't someone just create a apk file and save us all from this hassle. Its hard enough compiling for a Linux distro.

Comment by chrizz...@gmail.com, Feb 23, 2011

Here ya go: http://dl.dropbox.com/u/2497765/Remuco-debug.apk

Just compiled it (24/02/2011), was relatively easy to do (for me), just follow the instructions and do the "android update sdk" before compiling.

Comment by jbob...@gmail.com, Feb 24, 2011

THANK YOU!!!

Comment by Dragonia...@gmail.com, Apr 17, 2011

The current version does not compile (or maybe it does, I know nothing about ant, it says /home/dragonias/Downloads/remuco/client/android/build.xml:65: Unable to resolve target 'android-7')

Thanks a lot for the compiled .apk!

Comment by colr...@gmail.com, Jul 11, 2011

Thanks chrizz. Works perfectly.

Comment by project member obensonne@gmail.com, Jul 18, 2011

By the way, meanwhile a compiled APK is already shipped within the release tarballs.

Comment by t...@zeroos.co, Dec 5, 2011

It worked very well for debian and android and Thanks a lot......hope to see this app in market soon..:)

Comment by stormerider@gmail.com, Dec 22, 2011

Similar results to skarard, this is what I had to do (I'm using Ubuntu 11.10, trying to get this to work on my Nook Color).

I added my ~/android-sdk-linux/tools directory to my PATH environment variable and updated the Android SDK. This chewed for a while:

android update sdk --no-ui

I then went to the remuco/client/android directory and ran the project update:

cd <path-to-remuco>/client/android
android update project --name Remuco --target 8 --path .

(Including the trailing . Note that I had to specify a target level of 8-- aka Android 2.2-- to get BlueTooth? support.)

Then I linked "client/common" to "common/client" with

mkdir <path-to-remuco>/client/android/src/remuco/common/
ln -s "<path-to-remuco>/client/common/src/remuco/client/common" "<path-to-remuco>/client/android/src/remuco/common/client"

After that I was able to compile:

ant debug

Haven't tested it yet, but I still have to get ADB set up on this machine with my Nook Color...

Comment by dwmw2b@gmail.com, Apr 11, 2012

Bluetooth doesn't seem to work, on Samsung Galaxy S2. I can choose my server from the list of paired devices, but 'hcidump -X' on the server shows it makes no attempt to connect. Bluetooth between the phone and the server does work for other things.

Comment by dwmw2b@gmail.com, Apr 11, 2012

Aha, system logs show it was attempting to connect to the first paired device in the list, not the one I'd actually selected. Unpairing with the other devices made it work. So it's "just" a UI issue, perhaps.


Sign in to add a comment
Powered by Google Project Hosting