Post Image

Automatic Caching

Caching server data locally is a huge part of the advantage a native app has over a web app. Normally this is non-trivial as it requires a delicate balance especially if you want to test the server resource for changes.

Read More
Post Image

Introduction to In-App Purchase

In-app purchase is ahelpful tool for making app development profitable. Codename One has supported in-app purchases of consumable and non-consumable products on Android and iOS for some time now, and with the next update we are adding support for subscriptions. For such a seemingly simple task, in-app purchase involves a lot of moving parts - especially when it comes to subscriptions.

Read More
Post Image

Cache, Sorted Properties and Preference Listener

We've had quite a few interesting features land last week and didn't get a chance to cover them. First we have access to the OS's caches directory where you can store files that you don't really need as cache. Both iOS & Android have such a directory and files stored there might be purged without notice if the OS runs out of space.

Read More
Post Image

TIP: Search the Website

A frequent complaint we get is the lack of a search feature on the site and we get that. It's frustrating to us too. We'd like to add it but are still looking at the "right way" to do it which I'll discuss at more length below but for now I'd like to discuss a couple of relatively simple workarounds.

Read More
Post Image

Questions of the Week 35

This week has been a bit slow with features and external progress as we've started to focus on the issues for the January release of 3.6. During December we'll probably pause blogging between December 22nd and January 2nd as it would probably get lost to the ether for most of our audience.

Read More
Post Image

Seamless Storage Encryption

We had support for bouncy castle encryption for quite a while but it is not as intuitive as we'd like it to be. This makes securing/encrypting your app painful and so we procrastinate and eventually skip that "feature" altogether. Frankly, I hate working on encryption it's painful... That's why we procrastinated on this feature until today!

Read More
Post Image

Default Validation Emblem

The validation framework makes it easy to verify input quickly and effectively. Up until now you had to define an emblem in order to create an error icon and if you didn't you had to define an "Invalid" UIID for every entry.
This exists by default for text fields and other types but is still a big hassle just to check that we have a valid email...

Read More
Post Image

TIP: Avoid 2D Arrays

In the first betas of Codename One we had a lot of bugs related to 2D arrays due to XMLVM. We no longer use XMLVM but the recommendation to avoid 2D arrays remains. We still use them in some occasions e.g. in the creation of a DefaultTableModel but the implementation discards them in favor of an ArrayList internally.

Read More
Post Image

Questions of the Week 34

While I find these posts useful I think it's time to re-think this post which is overly mechanical and only post interesting news from the week rather than "everything". So this week we'll try something new, I'll discuss the news in general and the questions/answers I find valuable only. I'll ignore the other questions and this should make the post more "digestible".

Read More
Post Image

Request Body, Dialog & Border Layout

Subclassing isn't bad but it becomes tedious especially if it's just there to implement something trivial. One of the pain points we had with the ConnectionRequest API's is the submission body wasn't as convenient as it should be.

Read More