![]() |
[BETA RELEASE] PhoneME Advanced (Java Mobile)
2 Attachment(s)
Background:
We have native versions of Java Standard Edition (Sun JSE Embedded / OpenJDK) to run desktop Java applications . We could not run Java Mobile Editon apps/games (Opera Mini, Shazam etc) as you would find on other mobile phones, without MicroEmulator running on top of Java SE. While this worked to an extent it did take a lot of CPU to run JavaSE, running a JavaME emulator, to run a Java ME app. The ideal solution would be to have a native version of JavaME we can call from the command line like Java SE . PhoneME is the equivalent of this and has been around for a while, but compiling it is notoriously difficult, and there have been no working compiled versions of it available for N900 until now. ------------- I have approached Davy Preuveneers who was behind the following builds for Android, Linux ARM and Windows Phone, and he has very kindly donated some time to create a Maemo/MeeGo version for the community. Quote:
|
Re: [TESTING] PhoneME Advanced (prototype release) with Opera Mini 6
input method (mscim) not work
|
Re: [TESTING] PhoneME Advanced (prototype release) with Opera Mini 6
ok, this might actually be really cool
thanks for sharing this |
Re: [TESTING] PhoneME Advanced (prototype release) with Opera Mini 6
Post updated with background information about JavaSE, JavaME and PhoneME, to explain which problem this solves for N900.
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
[DarkGUNMAN], did you try to run Opera Mini v6.5? I tried and it crashes on start. I just replaced names of jar and jad files in opera.sh. I also tested v4.2 which works fine.
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Opera is working on my N900..by testing the examples included...Woow...it is very fast...I've tried to start Skebby.jar but it can't find a PlayerListener class :( any hints?
I've also tried to start Whatsapp jar but it says "Illegal Protocol" because it lacks of s40 nokia libs :( |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
what does ebuddy says? can anybody try it out? :)
would be fine to have a messneger client running on our N9/N950's (without having to sync all the contacts in our devices) |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
anyone tried shazam
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
1 Attachment(s)
I've been asked to try and get a jar file working.
This method might work for other jar files for testing.. no guarantees since this just my own guessworkl The command line for this is not as straightforward to get working, but reading the .sh files bundled with this it loads the modules before calling jar, then loads the main class. The main class is named in the jar file.. this can be found by opening the jar file with a zip program. Open 'META-MF/MANIFEST.MF' with a text editor The file will look something like this: Code:
Manifest-Version: 1.0 If you navigagte the file using a zip program you will find a file structure similar to this. To get it working I edited the .sh file and saved a copy: Code:
#!/bin/sh |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
This looks very promising, I have never used MicroEmulator as it was quite difficult to achieve good results.
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Will this support those WEB ADDRESSES which require java ?
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
Do a quick search of the forum for other java related threads. |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Hi all,
I am the guy that made this phoneME Advanced build for Maemo. I justed wanted to inform you about a new build I put online at: http://davy.preuveneers.be/phoneme/public/n900/ This build has JSR-75 support (though not properly tested). This should make Opera Mini 6.5 work. ATM there is no other JSR support, so no audio/video/3d/gps. I also enabled full-screen. I configured Ctrl+Up in the application to toggle between full screen and normal. Rotation to portrait mode will probably not work. To run other midlets, you need to copy and modify one of the scripts. You can leave out the [-jadpath jadfile] switch, but you do need to know the main class of the midlet (there can be multiple, have a look at which ones are listed in the jad file). You cannot use this VM to run java applets or whatever in a browser. There are still some bugs in there. The keyboard/pointer events from Maemo/Qt4 need to be mapped on those that phoneME understands, and the way it is currently implemented will cause some issues when you run two midlets concurrently. Before you all start launching features requests :-), I would like to point out that my spare time is limited and I even don't have a N900/N950/N9 device so I have no way of testing my builds on a real device. I am using the MADDE emulator to test my build, but it does have its limitations. For example, performance issues are hard to detect and not all features can be emulated. Nonetheless, your feedback on this forum is much appreciated and I hope you find the builds useful. Cheers. Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
hope to see positive feedbacks from testers, hopefully we'll be able to run shazam & whatsapp soon :p what about you open donations for this project to get yourself the awesome N9 ;) thanks again |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
2 Attachment(s)
Hi Davy,
I don't know what you did with this build but it definitely runs faster than the first one :) Full screen mode - screen is redrawn once a text entry box is clicked, after that it works fine. Scrolling is smoother, BBC page included as per the last test. No keyboard problems found. I see Filesystem access is enabled in this build as well.. Where does PMEA create the configuration settings for Opera after it has finished installing? I may need to add a symlink to the MyDocs folder and SDCard Very nice work :) |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
also work on this device (MeeGo compatible?). I would not want to spend 485 EUR on this device for testing purposes if it would be completely incompatible. I appreciate the donation suggestion and the support. Although I do have a PayPal account, I never put a donate link on my phoneME website in the past because I wanted to avoid any obligation on my part and endless discussions with people expecting me to fix bugs/add features/buy the device asap because they donated 10 EUR/$. Of course, I know there are also a bunch of people who just want to say thanks and buy me a beer :-) Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
Quote:
in one of the subfolders of: /home/developer/phoneme/midp/midp_linux_fb_gcc/appdb Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Opera and microemo-demo worked fine on my N900, impressive speed. I didn't test much.
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Link to thread on forum.meego.com to follow feedback from meego community.
http://forum.meego.com/showthread.php?t=5653 |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
1 Attachment(s)
DavyP, is it possible to change code page to Central and East European Latin (Windows-1250 or ISO-8859-2)? Some characters are missing in Slovenian OperaMini.
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
5 Attachment(s)
I found these dictionaries and tested English-Croatian 0.61n MIDP-2.0 Max which works quite fine with stylus. :)
my .sh file Code:
#!/bin/sh |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
This is not a code page issue, but a font issue. The phoneME VM is only able to draw a certain subset of characters because it uses a builtin font bitmap with those character to draw them. It is actually a bit more complicated: the font bitmap is first converted into C code that draw these characters as fast as possible. This C code is compiled directly into the VM, so not easy to replace, and it is not possible to convert all characters this way due to the huge amount of code it would generate.
I would need to rewrite the text drawing routines to use Qt4's backend rather then the built-in techniques. This is not straightforward to get right, because when done wrong it could significantly affect the text rendering performance. Some midlets come with their own text rendering techniques. The Opera Mini 4.2 in the above screenshots and the dictionary application seem to be two examples. They circumvent the text drawing routines by drawing everything themselves on a midlet Canvas or GameCanvas. So yes, I am aware of the issue, and when I have time I will look into it. Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Note: ROTATION does work, as well as full screen. Requires going into a text entry screen where there is a very brief green flash before appearing the correct size and orientation.
Screenshots to follow when I get home |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
I tried with an N9, but it doesn't work for me.
I copied the files to the root directory (/phoneme) then I tried to launch opera.sh but permission denied. What did I wrong? |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
@DavyP - can't believe how fast is opera, thanks a lot man. There is a little problem though - JVM segfaults on exit.
EDIT: segfault happens only when started under root account. |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
I'd recommend extracting it to your $HOME folder instead. Don't know what it is on the N9, but MeeGo CE is /home/meego. Create a /home/meego/phoneme folder and try it there. You may have to set permissions on the folder as well. |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
compiled as a library. I did so anyway to simplify the compilation process, and created a frontend application in Qt4 that: 1) dynamically loads this library through dlopen() 2) uses dlsym() to find cvm's original main() method 3) starts a new thread and 4) calls the original cvm's main() method The thing is that the either the Qt4 frontend or the cvm's thread can clean up and call exit() while the other part is still busy, causing a segfault. This should not happen while the application is running, only when you end the application. Not sure though why this only happens under root. Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
execute permissions? Perhaps you unpacked the tgz archive with a tool that does not preserve execute permissions? Try the following command in /phoneme: chmod a+x opera.sh chmod a+x test.sh ... do this for all scripts Also set the execute permission for the cvm binary: chmod a+x bin/cvm You can try to run a console application: bin/cvm -cp testclasses.zip Test or ./test.sh I hope this helps. Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
I live in Hungary, so I have the same problem, than the Slovenian member, the program haven't every character, and there is a grey line on the bottom. Thanks for your work, it's a great progress, I hope there will be a solution for the problems above. |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Awesome, unexpectedly fast! Great job, thanks a lot for your great effort. I hope you would be able to manage more time for the app!
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Great to hear that the build also works on the N9. I am aware of the font issues.
Can you confirm this grey bar issue with other midlets as well? Try ./microemu-demo.sh If so, then I am afraid this is an N9 specific issue, which I unfortunately cannot reproduce at the moment without a real device. Thanks for testing. Davy |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
if your work leads us to run WhatsApp i can guaranty you a lot of beers :D |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
thanks a lot ,appreciated your efforts . Its a great experience !
|
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Quote:
So, please, keep this thread clear from harmattan trash. /Estel |
Re: [TESTING] PhoneME Advanced (Java Mobile) prototype release
Lol@Harmattan trash.
DavyP, if we had a whip around to get you an n900 to develop on, would you accept? |
All times are GMT. The time now is 04:01. |
vBulletin® Version 3.8.8