Open Source & Free  

TIP: Obfuscation Mapping File

Proguard is one of the most disliked aspects of Android programming. Developers attack it left and right because there are so many nuances to it. That’s a huge mistake, proguard is one of the most important tools in our development toolchain. It makes our apps slightly more secure, much smaller and even slightly faster. Codename TIP: Obfuscation Mapping File

Switch, Progress and Pull to Refresh

Some of our older components were developed years ago. As Android and iOS slowly converged their UI paradigms we got stuck supporting odd/outdated functionality as designs shifted. Three great examples are pull to refresh, OnOffSwitch and the InfiniteProgress features. OnOffSwitch contained labels both in iOS & Android. On Android it was literally a button that Switch, Progress and Pull to Refresh

Build App Beta

One of the big “behind the scenes” motivations for our big build cloud migration was new server API’s. We now have a completely new backend and this made it easier to build a completely new Codename One App christened as “Codename One Build”. This app is currently in public beta on Android which you can Build App Beta

TIP: Fix Issue with Missing Builds

A while back we announced the migration to the new build cloud. The migration worked very smoothly and mostly seamlessly but there was one caveat: client libraries must be up to date. This is a confusing point so hopefully this long overdue post will clarify it. The core of the problem is CodeNameOneBuildClient.jar. It’s a TIP: Fix Issue with Missing Builds

Codename One 5.0 "Social" is now Live

We are thrilled to announce the release of Codename One 5.0 – Social. Codename One is an open source “Write Once Run Anywhere” mobile platform for Java and Kotlin developers! We postponed the release of this version since it’s so packed with big changes. We made CSS a first class citizen in Codename One and Codename One 5.0 "Social" is now Live

Codefreeze for Codename One 5.0 – Social

Codename One 5.0 (Social) will launch next week, to keep the code stable we are entering a week long code freeze. Please update your plugin installs frequently and report bugs immediately so we will have a stable release! We’ve added a lot of new features to 5.0 but a few of the big things are Codefreeze for Codename One 5.0 – Social

TIP: Auto Reconnect Web Socket

WebSockets changed the way I do networking code. I combine them with WebServices to get the best of both worlds. But they still suffer in terms of reliability. With WebServices we have retries and a mostly transactional model. There is no permanent connection that should be re-established. With WebSockets a disconnect can be painful, up TIP: Auto Reconnect Web Socket

Preparing for Codename One 5.0 – Social

Codename One 5.0 AKA Social will launch on September 19th. We pushed this release back to include support for crucial features such as JDK 11/OpenJDK support. With these features in place and a slew of other features we are gearing towards 5.0 GA. Tomorrow (Friday) we will push out plugin version 4.5 for all IDE’. Preparing for Codename One 5.0 – Social

Removing the Old Preferences

A while back we introduced Codename One Settings which superceded the old approach built in the IDE itself. This allowed us to consolidate code and move faster. That’s how we were able to implement more wizards for things like CSS support etc. Up until now we just left the old UI in place. People are Removing the Old Preferences

TIP: Activate via URL and Send Arguments

The most secure password in the world is the one that doesn’t exist. You remove the user from the equation with a completely random key. To be fair this has some drawbacks and a password still exists somewhere (in your phone/email) but generally this works rather well…​ The trick is simple, if we want to TIP: Activate via URL and Send Arguments

Status Monitor

I wrote before about Crisp and how pleased we are over the migration to their service. Recently they started offering a new service of status page. This service runs on their servers and essentially monitors whether our service is down. Due to the complexity of our service not all of the pieces are monitored but Status Monitor

No More iOS Screenshots

In February I wrote about a new/improved way to build for iOS without the screenshot process. That was a bit ahead of its time as the xib build didn’t disable the screenshot process yet. This is now fixed and it’s turned on by default now. That means that if you send an iOS build it No More iOS Screenshots