02-06-2009 11:48 PM
I am a java developer but new to BB development. I am starting bb development in view of the upcoming storefront. Now, I am going to purchase a blackberry device for development.
1. I request your suggestion to purchase which blackberry.. storm / bold / curve ?
2. Do the storefront going to support storm ?
3. Which bb device having the largest user base ?
4. Any suggestions for a new developer ?
Your help will be greately appreciated. Thank you.
02-07-2009 01:57 AM
if your just starting, i don't think you need to buy an actual device. RIM provides simulators for storm, bold and curve. just download the JDE then read the developer's guide.
with regards to your query on the largest user base? here in the philippines i think curve is the most common unit for now. storm is not yet available here.
02-07-2009 02:32 AM
Hi, Yes. I already downloded the simulator and JDE. Going to try it but eventually I will buy a device sooner or later.Do the BB APIs support the new features in storm like touch interface, accelarometer etc yet?
The potential buyers might be from NA and EU.. so I think my application should support the mostly used models in those region and to support other models as many as possible.
In the case iphone appstore, that is a new platform so app building just started. What would be case for BB. I am sure that there might be huge number of applications already available but if any one can give some idea abt the existing scenario that will be great.
Thank you Johnbibs
02-07-2009 03:04 AM
02-07-2009 07:46 AM
How do you suggest building for multiple versions? It turnes out all the JDEs, at least from 4.0.2 AFAIK,
have the same structure and it is pretty easy to write a bash or other script to just change the
JDE path and rebuild but I'm not sure if there are any other approaches. RIM offers some conditional
compilation but I've used the g++ preprocessor so I get familiar conditional and macro logic.
This has worked well for other things like feature inclusion or debug/release.
Also, for minor things, it is possible to build for earlier version and do runtime check on OS version
but once you have server side logic and build scripts it is probably just easier to make as many
builds as you need.
02-07-2009 09:24 PM
to support multiple versions i do it manually. i have several versions of jde. just to check that the Classes i used is still on the other jde version. for example, in 4.2.1 you can programatically check if there's a wifi signal, but in 4.3 you can check not just the availability of the wifi signal but also if it is connected to the wlan. so if you're code includes the checking if the device is connected to the wlan, it will not run on 4.2.1 devices because 4.2.1 doesn't have WLANInfo class.
so i think it's better if you have multiple versions of JDE. just to be sure it will run smoothly.
02-08-2009 07:32 AM
Well, it depends what you are doing. Sometimes you can put in methods in derived classes
that only override base class methods in some jdes and this is ok if you don't need to call super.
Usually, it is an issue with quirks or minor behaviour issues, not large API changes.
With wifi, you can still make an option for inserting ";inteface=wifi" or whatever the parameter
is into URL's but it would require the very limiting user selection.
This is another reason that reflection would have been nice to have early on but I',
not sure if it is viewed as a security risk or an expensive luxury. Many design issues seem
to be related to product line positioning rather than flat our capability-resource tradeoffs.
But, as I said, alll the JDE's have the same structure and adding a new build usually just means
changing the path to the compiler. Of course, you still need a conditional compilation mechanisms or
N completely different sets of code. If you want to accomodate other phones, having a portable
conditional mechanism is helpful so I'm pretty much sold on the g++ preprocessor for this.
02-08-2009 09:43 AM
I agree . Reflection is what im looking forward to on the next releases of jde.
Anyway sorry for hijacking your thread. Just to get back to the topic, it's up to you on how are you going to support multiple versions. hehe...
read the dev guide and browse in knowledge base. it will help you a lot. hehe