This last week I’ve been negotiating with a company to do some consultancy work creating an Android app using Rhomobile. Whilst I cannot go into detail at this moment about the app, the funding is dependent on some governmental funding scheme, and still awaiting clearence, I thought I’d better install Rhomobile and check it out – it looks great “on paper” as it is a multi-platform mobile phone app environment based on Ruby on Rails.
So I started installing the environment following the very good instructions on Rhomobile’s site, however after doing so, remembering to set JAVA_HOME manually (Ubuntu’s update-java-alternatives doesn’t – surprisingly!), I ran into trouble. I got:
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java:461: cannot find symbol
symbol : method setForeground(boolean)
location: class com.rhomobile.rhodes.RhodesService
setForeground(true);
^
platform/android/Rhodes/src/com/rhomobile/rhodes/RhodesService.java:480: cannot find symbol
symbol : method setForeground(boolean)
location: class com.rhomobile.rhodes.RhodesService
setForeground(false);
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
2 errors
It turns out that Rhomobile uses the deprecated setForeground(boolean) method, which Google has removed in the newest Android SDK. Luckily I had an older version of the Android SDK on my desktop, and it turns out that it works perfectly on that version. I can only hope Rhomobile fix this soon. I really hate using old SDKs!
I have obviously notified Rhohub…
This is issue with Rhodes 2.3 and Android 3.0 SDK preview. It is fixed in master branch. We are going to release it this week.
Thanks for that – I really do like companies that respond!! 🙂
I’ve now tested it, and I can confirm that they have resolved the issue.
One thing to note is that by default, the build.yml file doesn’t get any android settiings. It got iPhone and MS, which is odd as I left them blank when setting it up. I’ll try and do this on a mint system, where I haven’t upgraded Rhomobile, just to verify this is common problem. I can see another issue coming up though.
Without this Rhomobile tried to install a default emulator, and somehow this didn’t work.
But to rectify this I just added
android:
emulator: nameOfMyEmulator
to my build.yml file, ran rake run:android and it worked fine.