Synclast

For J2ME Developers >Synclast UI API

 


Overview
Download
Design Details
Java API Docs
Support
Licensing
   

Q: Why build a widget toolkit? Isn't there already one in MIDP?

Sure, and you're free to use it, and not only will your apps be cross-platform, they'll be ugly as sin. The Synclast UI API is a small set of Java classes that give you a lot more choice in designing vibrant user interfaces for today's J2ME devices. You get a set of standard widgets and layout managers, and you can extend ours and build your own if you want something particularly fancy.
Back to Top

Q: How much space does the toolkit take up?

The short answer is "not much". The real answer varies based on how much of the API you use. The minimal footprint is less than 10K after obfuscation. The more functionality you use, the bigger it gets. The Synclast classes have been designed with compression in mind, to get the biggest bang for the byte. As a result: lots of useful stuff, itty-bitty living space. Hey, that could be our motto.
Back to Top

Q: I heard Motorola has a widget toolkit. Why should I use Synclast's?

Motorola provides the Lightweight Windowing Toolkit, which has similar core widgets and functionality to the Synclast UI API. It's pre-installed on Motorola J2ME devices, so if you deploy to Motorola handsets, you don't need to reserve JAR space for the library itself. You can also use the LWT on other manufacturers' handsets, similar to the way you would use Synclast; however, Motorola provides no support for this usage (why would they, really? They're not out to sell Nokia phones).

Synclast has several features above and beyond the LWT. First and foremost is the concept of style sheets, which allow you to easily configure the look and feel of widgets. This lends itself to much more colorful applications. Synclast also allows multi-layered container hierarchies where the LWT does not. Finally, the open source benefits of Synclast should be obvious, and you're welcome to collaborate with us to add features and innovations in the future. In comparison, by its very nature, the LWT has become a somewhat stale API.
Back to Top

Q: OK, how about Nextel's widget toolkit?

Ask almost the same question, get almost the same answer. Nextel's toolkit is open source, but it's also designed for greyscale devices and has not been actively worked on for over a year.
Back to Top

Q: Why do I always have to should I obfuscate?

You want the functionality? Well, you gotta pay the price got it. Certain Minor sacrifices have to be made. Ain't nothing free. And stop whining. Starting with the 20040402 release of Synclast UI, you aren't required to obfuscate, though it's still a good idea (see below). Instead, you can use the predefined _class static variables instead of the .class construct.

However, if you're writing J2ME apps, you should be obfuscating your stuff anyway. It cuts down on size immensely, meaning faster download times for everyone.

The real reason we need this workaround is this: The Java compiler generates references to the java.lang.NoClassDefFoundError class when you use the ".class" syntax to reference a class by name. Unfortunately, this class isn't included in MIDP 1.0 (it is in MIDP 2.0, so to be fair, you don't have to obfuscate when you're running on MIDP 2.0, but like we said, who's running on MIDP 2.0?), so we would have to provide it ourselves, and then run an obfuscator so it ends up outside of the reserved java.lang.* package space. Using the _class workaround is a lot simpler all around.
Back to Top

Q: What's this about the GPL? Can I sell the apps I develop with the Synclast UI API?

Well, sure, there's nothing in the license about that. The GPL just says you have to make your source code available to anyone who buys or licenses your apps. You can charge them whatever you want for that.
Back to Top

Q: But I don't want to open up my source code.

Fine, be that way. In that case you need a different license. Synclast will license our APIs to you for free on a per-app basis, under the terms of the Synclast Wireless-Enabled Liberty License (SWELL). SWELL's terms go something like this: you can sell your app wherever you want and retain all rights, yadda yadda, as long as Synclast has the right to sell and promote it too (under our generous revenue sharing terms, of course). Hey, it's a win-win situation. If you want to give us exclusive distribution rights, we can probably sweeten the deal even more, but why would you go and do a damnfool thing like that?

Anyway, this different licensing scheme is not an automatic thing. The world is full of paperwork, and to use the SWELL license, you have to fill some out. Email swell@synclast.com to get all the info and start the process.
Back to Top

Q: Tell me more about this so-called "process".

We'd be happy to. Check out the FAQ page for Application Distribution.
Back to Top


Copyright © 2003-2007 Synclast. All rights reserved. Legal and Corporate Information >