×

Discussion Board

Results 1 to 11 of 11
  1. #1
    Registered User
    Join Date
    Jun 2013
    Posts
    46

    Introduction and 2 Asha questions

    Hello Nokia devs,


    Short introduction: I began learning JavaME back in 2006 in my sparetime. Took me 3 years before I felt I had a good grip on it. Then came iPhone, Android and Windows Phone - and they all decided to NOT support JavaME.

    Since keeping up with all the new languages, that is constantly emerging, isn't part of my hobby, I'm mostly sticking with JavaME. And since Nokia seems to be the only company still releasing phones that runs JavaME, here I am.
    I have been looking into Android development as well, but JavaME is more intriguing to me.

    For the past 2 years, my girlfriend and me (LuBlu Entertainment, www.lublu.dk) has been working on our 4th game title in our sparetime. (Yes, it takes that long when you have daytime jobs and kids among other things to take care of too ;-)
    It's a very simple and small arcade game, support for both buttons and touch screen. (And yes, graphics has improved a great deal compared to our first 3 games).

    This game will be our first Android title, but also our 4th JavaME title. We've been developing it for both platforms simultaneously, by using a small framework I've also developed, allowing me to simply copy'n'paste 90% of the code between projects.

    Since we're getting closer to the end of the project, soon we'll have to look into publishing, and I'm hoping to be able to publish for the Nokia JavaME enabled devices.

    Anyway, I have 2 questions for now:

    1) I see that Nokia has expanded their UI API quite a lot. I trust there's still support for standard JavaME classes? I'm not using the FullCanvas class, but rather GameCanvas for example. (Have to ask this before I go out and buy an Asha test device).
    2) I know that Nokia creates a lot of their own JAD attributes. I don't suppose I'd be so lucky that they've invented some clever attributes for serving multiple icon sizes for various platforms, similar to what Android does? If not, what is the one icon size to use nowadays to support most possible devices?

    Any other advice you might have is also most welcome.


    Thanks

  2. #2
    Nokia Developer Champion
    Join Date
    Feb 2008
    Location
    Ahmedabad, Gujarat, India
    Posts
    3,852

    Re: Introduction and 2 Asha questions

    Quote Originally Posted by misthalu View Post
    Hello Nokia devs,
    I see that Nokia has expanded their UI API quite a lot. I trust there's still support for standard JavaME classes? I'm not using the FullCanvas class, but rather GameCanvas for example. (Have to ask this before I go out and buy an Asha test device).
    Yes standard javame classes are still supported Nokia APIs are just wrappers around them to make developers life easy !!

    Regards,

  3. #3
    Registered User
    Join Date
    Mar 2003
    Posts
    4,105

    Re: Introduction and 2 Asha questions

    I recommend to play around with the new Asha software platform emulator. Its is a Nokia 501 and quite near to the actual device. From within its Nokia IDE (a Eclipse Pulsar), you are able to install all the earlier emulators (named SDK) side by side. This is a perfect setup for icon testing.

    Quote Originally Posted by misthalu View Post
    [Did Nokia] invented […] attributes for serving multiple icon sizes for various platforms, similar to what Android does?
    If you are a good guy, and you go via the Nokia Store, you give every platform its own icon. With Symbian devices, your are able to specify its own icon. More about this in the (old) archived Java Developer Library. A short summary can be found here.

    If you do not have the funds to create several icons, concentrate on the icon style required for the new Asha software platform. It will look good even on phones from 2006.
    Last edited by traud; 2013-06-11 at 08:28.

  4. #4
    Registered User
    Join Date
    Jun 2013
    Posts
    46

    Re: Introduction and 2 Asha questions

    Thank you for your replies.

    I am using Linux, so I cannot install Nokia SDK.


    I agree that the optimal experience for the user is to add different icons, but I won't be doing that. Simply too much work. I wouldn't mind creating many different icons, if I could include all of them into the same jar package, and have the phone pick the one it wants. But having to create 20 packages just because of different icon size is just ridiculous, and always has been ridiculous. I was kinda hoping Nokia had added a solution to that, seeing as they've added so many other helpful API's.

    At this page:
    http://www.developer.nokia.com/docum...E4A538FB8.html
    - it tells about a scalable icon. So I think I'll look into that.

    I'm also wondering about the JAD attributes Nokia-MIDlet-Original-Display-Size and Nokia-MIDlet-Target-Display-Size. Says there on that same page, that it only applies to Canvas though. So it doesn't apply to GameCanvas?

    The current code in our game does have scaling functionality, if the game is run on a device with a resolution that doesn't match the graphics sizes. But it would probably require a lot less memory if this was handled by those JAD attributes?
    We will be creating multiple packages for different resolutions though, with different sized graphics for each. Even for the Android version. But we'll still include scaling functionality. Tests shows that such functionality is very slow though, especially if a filter must be applied. That's just another reason to look into those JAD scaling attributes - if they work for GameCanvas. Do they?

  5. #5
    Registered User
    Join Date
    Mar 2003
    Posts
    4,105

    Re: Introduction and 2 Asha questions

    GameCanvas is a sub-class of Canvas, everything which works for Canvas, works for GameCanvas.

    Scalable icons only work in Symbian, and only recent ones. If you do not go for a good icon, your Java MIDlet is going to fail. Period. if you do not invest that time, your MIDlet is not worth looking at. Period. An icon is the first people are going to see, we are starting to judge from the beginning. If you fail here, you have problems to gain bonus later on. Furthermore, if you do not go for these emuators (and Windows), your MIDlet is going to fail. Period. Debugging is much easier with these emulators. You save time! As they are actually full complete devices, they are more than worth a try.

    In Nokia world, two resolutions are dominant: 240 × 320 and 360 × 640. If you are not supporting these two natively, your Java MIDlet is going to fail. Period.

  6. #6
    Registered User
    Join Date
    Jun 2013
    Posts
    46

    Re: Introduction and 2 Asha questions

    Don't be so hasty traud.

    We will be doing a good icon. We just won't make it in 20 different sizes. Obviously, we'll make one for Asha. Otherwise there wouldn't be any point in publishing at Nokia Store. Then maybe 1-2 other sizes for JavaME devices (+ 4 sizes for Android). But that's it. No more. And if that means our MIDlet will fail on other devices, then that's fine.

    One thing I have learned in my 7 years in the JavaME environment: Emulators simply can't be trusted. Never ever publish something you only tested with an emulator.
    There is one thing far better than emulators: The real thing. We buy a lot of real devices and test on those to make sure everything is running.
    So don't say that I absolutely need Windows and Nokia SDK. That's just not true. In fact, for me to install Windows just to run Nokia emulators would be a waste of time and money, since I need/want to test on the real device anyway.

    We will be targeting the two resolutions you mention and more. We just won't be making e.g. 7 jar files for each resolution just because of different icon sizes.

  7. #7
    Registered User
    Join Date
    Mar 2003
    Posts
    4,105

    Re: Introduction and 2 Asha questions

    Quote Originally Posted by misthalu View Post
    don't say that I absolutely need Windows and Nokia SDK
    Obviously, you never ever played with the Nokia Series 40 and Asha software platform emulators. If you do not want to re-learn, that these are actual devices with production firmware. If you do not want to re-learn, that these offer a lot of debugging messages and internal states of the virtual machine. If you do not want to learn, how the icons are displayed – with those you could check in seconds. If you do not want to learn that you are going to save a lot of time with these emulators. Emulators which are unmatched in industry. If you do not want to re-learn, well then, I am no help.

  8. #8
    Registered User
    Join Date
    Jun 2013
    Posts
    46

    Re: Introduction and 2 Asha questions

    Quote Originally Posted by traud View Post
    Obviously, you never ever played with the Nokia Series 40 and Asha software platform emulators.
    That is quite true. It's been a long time since I tried a Nokia emulator. Most our JavaME stuff has been developed using plain NetBeans and WTK.

    Quote Originally Posted by traud View Post
    If you do not want to re-learn, that these are actual devices with production firmware.
    I have no idea what you mean with that. I'm fully aware that we're not living in a virtual reality, and that Asha are in fact real devices just like any other JavaME enabled device our MIDlets runs on.

    Quote Originally Posted by traud View Post
    If you do not want to re-learn, that these offer a lot of debugging messages and internal states of the virtual machine. If you do not want to learn, how the icons are displayed – with those you could check in seconds. If you do not want to learn that you are going to save a lot of time with these emulators. Emulators which are unmatched in industry. If you do not want to re-learn, well then, I am no help.
    I have no doubt that once installed, they could save me time. But you forget to add the time needed to format and install windows and set everything up. That takes ages, and I have no interest in using Windows.


    I am always interested in learning. But not on the expense of having to install Windows. I use Linux, and I'm not willing to switch OS in order to support a certain brand or family of devices.

    We are not solely targetting Nokia Asha devices. We are targetting all MIDP2.0 CLDC1.1 (or higher) devices. We are not using any Asha or Nokia specific API's.

    It's quite clear that Asha offers more than standard JavaME does, with the additions to the Nokia API, and that's great and all. I'm looking forward to experiment with those later. But right now it's just not relevant. I could learn a lot about Asha, but it's just not relevant. Not this time anyway, not with this game. And if it requires Windows to learn, then it never will be relevant either. But I seriously doubt that Windows is a necessity. I'm sure I can test on a real device instead.
    We currently have more than 20 different test-devices. I'm sure we can manage an Asha in the batch as well.

    Regarding Nokia Asha, we are currently interested in knowing the go-to-market requirements, such as requirements to icons and advertisement graphics. So we will of course look into that. That requires neither Windows nor Nokia emulator.
    And then, as I said, I was thinking of buying a Nokia Asha to test on, to make sure everything is running as it should, and looks the way it should.

    I cannot see what I should "re-learn" in order to use that approach. But judging from your slightly arrogant tone, one of us is clearly missing something though.

    Is it because you're saying, that all the Asha models use different size icons? Is that it?

    Maybe you could give some concrete example of why I absolutely must install Windows and use Nokia emulators.

  9. #9
    Registered User
    Join Date
    Feb 2005
    Location
    Campina Grande/PB - Brazil
    Posts
    138

    Re: Introduction and 2 Asha questions

    Hi misthalu,

    I don't use Windows also, I develop for Series 40/Asha on Mac OS and I test my app/games on real devices and on the Nokia RDA service (https://www.developer.nokia.com/Devi...device_access/), some time ago I used the solution: Wine + Nokia SDK and Asha SDK beta; but now, because some necessities I'm using virtualization: VM Ware + Window 8.

    You don't need the Windows to develop for Series 40/Asha, but you will need a real device or the Nokia RDA solution to test your apps and make sure your apps it's ok.

    About the icon's size, you can use the Netbeans configurations to pack the right size for the nokia Series 40 devices (today we have 3 icon sizes: 1. keypad/touch & type; 2. fulltouch and; 3. the new Asha 501), with a little work and some configurations you can archive this result: one code, many versions with different icons.

    Regards,

  10. #10
    Registered User
    Join Date
    Jun 2013
    Posts
    46

    Re: Introduction and 2 Asha questions

    Hi TK2000, thanks for your reply.

    I was just checking out RDA before reading your reply. I didn't get it to work on Linux. Webstart gives me an error.
    So I tried downloading the JAR's instead, and got to start the app, but it won't keep the connection to the phone and never ges to display anything. From what I can tell, it fails when trying to load the skin. Tried unpacking the skin in the root folder from where I executed the jars, but didn't help.

    So I'll have to settle for the real thing.

    I'm used to creating many versions from the same code with NetBeans. We usually create multiple versions because of different sized graphics for different device resolutions. I just find it silly to create versions for e.g. 4 different resolutions * 4 different icon sizes = 16 different versions total, just because of different icon sizes.

    I mean, come on. This is 2013. It ought to be possible to just include 4 different icon sizes in the same package (like you can with Android), and then have the device figure out which icon it prefers to use. Considering all the Nokia-specific JAD attributes you can use already, it shouldn't be much work inventing more of those for dfiferent size icons. E.g. Nokia-MIDlet-icon-16x16: icon16x16.png and so forth. Such options should really have been included in the new Asha devices.

  11. #11
    Registered User
    Join Date
    Mar 2003
    Posts
    4,105

    Re: Introduction and 2 Asha questions

    Quote Originally Posted by misthalu View Post
    we are currently interested in knowing the go-to-market requirements, such as requirements to icons and advertisement graphics. So we will of course look into that. That requires neither Windows nor Nokia emulator.
    The Nokia emulator(s) make this much easier, especially if you debug installation and icons. Real Series 40 device get corrupted over time, at least here and I have not figured out why. With an emulator, it is just uninstall, re-install. Anyway, here is an overview of size. Just a note to other readers: Follow-up thread …

    Furthermore, even if you do not use any special API, the threading model in phones vary a lot. Especially the new Asha software platform is (completely) different when it comes to the threading model and the interpretation of the API (implementation). Although my apps work for a lot of platforms, I had to fix many small issues here and there. Some issues, I would not even found with my test cases and a real device. I really curious why that happened. Anyway, only the emulator and its log messaging indicated (severe) issues. Consequently, I recommend THE time saver: Nokia emulators (and those run on Windows). Setting up Windows and installing the JRE is not that time consuming because you can use a vanilla system. You do not even need a JDK.
    Last edited by traud; 2013-07-03 at 08:57.

Similar Threads

  1. Introduction
    By jimhawk9999 in forum General Development Questions
    Replies: 3
    Last Post: 2010-08-16, 13:50
  2. Introduction to MTM
    By Sirius81 in forum Symbian Networking & Messaging (Closed)
    Replies: 13
    Last Post: 2008-10-10, 11:20
  3. streaming introduction
    By bidii in forum Streaming and Video
    Replies: 1
    Last Post: 2004-06-04, 09:03

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
×