Cross-platform framework for building truly native mobile apps with Java or Kotlin. Write Once Run Anywhere support for iOS, Android, Desktop & Web.
OTHER License
Bot releases are visible (Hide)
Published by shannah over 2 years ago
Published by shai-almog over 3 years ago
ֿWe’re thrilled to announce the immediate availability of Codename One 7.0 (AKA Video). This has been our most challenging release to date. We constantly shifted the release date due to constantly shifting requirements and pivotal changes.
Check out the full announcement here.
Published by codenameone over 5 years ago
We are thrilled to announce the release of Codename One 6.0 - Chat. Codename One is an open source "Write Once Run Anywhere" mobile platform for Java and Kotlin developers!
With this release we introduced Codename One Build which is one of the biggest overhauls to the Codename One workflow since its inception. We also refined and updated many underlying technologies e.g. the xcode 10.1 migration, WKWebView
support, push replies, badges on Android and much more.
You can check out the details below for the full review but first if you are new to Codename One here’s a short primer. Codename One is the only platform that:
To learn more about Codename One check out the about page you can download it for free right now.
Version 6.0 is nicknamed Chat because of the WhatsApp Clone application that was developed with it for the online course in the Codename One Academy.
The top 5 features of this release are covered in this short video, check out further details below...
NOTE: Currently the iOS version is still in beta due to the tedious appstore approval process
xcode 10.1 Migration - builds on the Codename One cloud implicitly use xcode 10.1. We migrated from xcode 9.2 to satisfy Apples requirements, this has been seamless for the most part
VM Changes - we now support java.util.Objects
and some additional methods from Class
New Switch API - Switch replaces the old OnOffSwitch
API which is pretty old by now
Reply Push Notifications - the final piece of RFE 2208 Rich Push Notifications is now implemented. You can now prompt a user for a reply via a push message
Support for Badges on Android - we can now mark an Android icon with a numeric badge
Material Design Infinite Progress - InfiniteProgress now has a material design mode that includes the custom circle animation we see in material design
WKWebView Support - Apple includes two implementations of a "WebView". We now support both
CSS Improvements - underline border is now supported natively. Round rectangle is also supported natively and lets you activate the angle only on specific corners as per this RFE
Picker Improvements - Picker
now lets you define start/end date
FontImage rotateAnimation - FontImage
lets you animate an icon so it rotates infinitely effectively making every component into an InfiniteProgress
Added Ownership to Component Hierarchy - ownership allows us to create a relationship between components other than Component
-> Container
Added Animation Safe Revalidate - revalidte()
is a powerful tool but if it's invoked when an animation is in progress it might produce unpredictable behavior. This method solves that problem
Button Lists - List is discouraged but we still want lists that use a model to represent buttons, radio buttons and checkboxes button lists can fit in that niche
XML Mapping in Properties - this is still an experimental feature but XML parsing/generating is now supported for PropertyBusinessObject
PWA Install Prompt - a new API lets us install PWA's directly
New Full Screen API - the Desktop and JavaScript targets allow running the app in full screen mode by leveraging this new API
Facebook SDK Updated - we updated the Facebook SDK to use the latest version
There are many other features both big and small. Check out our blog and the github project history.
We took a lot of time for 6.0 but I'm not sure if that's enough. We might take longer to deliver 7.0. Currently the timeline is unchanged but we'll have to see.
We will have a Netflix clone tutorial in the Codename One Academy. Hence the moniker of the next release.
If you think we are doing a good job and appreciate our help please help us by:
Or just sign up for enterprise accounts which literally keep the lights on here... If your company can afford it please take the time and upgrade to enterprise, this will allow us to work on the things that are important for your company!
Thanks for reading this far and if you have any thoughts/suggestions of any kind please let us know!
Published by codenameone about 6 years ago
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 made CSS updates live (no recompile necessary). We moved from screenshots in iOS launches to storyboards. Added support for newer JDK's. Migrated to Android API level 27. Moved our entire build server infrastructure. Redid push notification and so much more...
There is SO MUCH more, check out the details below.
However if you are new to Codename One here's a short primer. Codename One is the only platform that...
To learn more about Codename One check out the about page you can download it for free right now.
Version 5.0 is nicknamed Social because of the Facebook Clone application that was developed with it for the online course in the Codename One Academy.
The top 5 features of this release are covered in this short video, check out further details below...
Live CSS Update -- CSS is now deeply and seamlessly integrated into Codename One. When you change the content of a CSS file and save the Codename One simulator automatically updates on the fly
Rich Push Notifications -- Push notification was overhauled, we moved the last of the functionality from GCM to FCM. We now support rich push notifications that can include images and complex functionality
Launch Screen Storyboards -- Historically iOS used screenshots of apps to fake fast application launches. Codename One automated that process in the past, it's now discoraged by newer iOS features such as side-by-side multi-tasking. As such we now use storyboard launch files. This allows side-by-side multi-tasking and as a bonus speeds up compilation while reducing the app size further
New JDK/OpenJDK Support -- We now support JDK's 8 to 11 this includes OpenJDK
New Cloud Servers -- We migrated the last remaining Codename One servers off of Google App Engine. This allowed us to introduce great new features such as the ability to increase your free build quota
Removed Old IDE Preferences UI -- The old right click IDE preferences UI was causing a lot of confusion due to lack of maintenance. It's now gone and replaced completely by Codename One Settings
Android API Level 27 -- We moved to Android's API Level 27 by default. Since Google requires API level 26 or higher at this time. We'll probably update API levels faster due to this policy
Lightweight Picker -- The Picker
component was rewritten as a lightweight component instead of a native one. This allows far more customization and cross platform consistency for one of our most problematic widgets
Low Level Camera API -- Camera Kit allows developers to access the native camera view to grab photos/videos and overlay graphics on top of the camera
Pluggable Spatial SQLite -- Spatial support for SQLite lets developers write complex location based applications. This functionality lets developers replace the existing native SQLite implementation with an arbitrary implementation which is very useful for enterprise grade features such as deep encryption, replication etc.
Improved Map Layout -- The map API now includes a native high performance component layout built in
Landscape UIID's -- Components can adapt their UIID to landscape, this enables features such as smaller title font/padding in landscape mode
Multiple Smaller Improvements:
DateUtil API for timezone related date functions
Sidemenu right side option and new tab ordering API
Ability to map a list of property business objects to a table
Rest API overhaul for error handling, properties etc.
Auto-reconnect for websockets
There are many other features both big and small. Check out our blog and the github project history.
We took a lot of time for 5.0 and I'd like to take a similar duration for 6.0. I think this made 5.0 a better release.
We will have a whatsapp clone tutorial in the Codename One Academy. Hence the moniker of the next release.
Check out our survey results to see the future apps we'll release into the academy. Even if you never plan to signup to the academy this should be interesting as it gives you a good notion of what can be built with Codename One.
If you think we are doing a good job and appreciate our help please help us by:
Or just sign up for enterprise accounts which literally keep the lights on here... If your company can afford it please take the time and upgrade to enterprise, this will allow us to work on the things that are important for your company!
Thanks for reading this far and if you have any thoughts/suggestions of any kind please let us know!
Published by codenameone over 6 years ago
Version 4.3 is a minor bug fix release centered around the new build cloud. It includes multiple new features such as improved push notification support.
This is a minor version update on the road to the 5.0 release scheduled for September 2018.
Published by codenameone over 6 years ago
Version 4.2 is a minor bug fix release whose main feature is the new "live CSS" support. With this release we've integrated CSS support into the distribution. It can be activated via Codename One Settings & provides live update support.
When you edit and save a CSS file in this new system the changes are instantly reflected within the running simulator. No restart necessary!
Published by codenameone over 6 years ago
Version 4.1 is a minor bug fix release, since switching to major version updates this isn't as significant as regular scheduled releases.
We've updated the GUI builder/designer & skins with multiple bug fixes and changes some of which are listed in this blog post: https://www.codenameone.com/blog/ios-back-command-behavior.html
Published by codenameone over 6 years ago
We are thrilled to announce the release of Codename One 4.0 - Taxi. Codename One is an open source "Write Once Run Anywhere" mobile solution for Java & Kotlin developers!
This new release overhauled the way Codename One is updated, added support for Progressive Web Apps (PWA’s), overhauled device skins & updated the backend iOS build tools. A major focus of this release is better support for peer (native) components, stability, unit testing and continuous integration.
Codename One is the only platform that…
Has Write Once Run Anywhere with no special hardware requirements and 100% code reuse
Compiles Java or Kotlin into native code for iOS, UWP (Universal Windows Platform), Android & even JavaScript
Is Open Source & Free for commercial use with an enterprise grade commercial support
Is Easy to use with 100% portable Drag & Drop GUI builder
Has Full access to underlying native OS capabilities using the native OS programming language (e.g. Objective-C) without compromising portability
Has full control over every pixel on the screen! Just override paint and draw or use a glass pane to draw anywhere…
Lets you use native widgets (views) and mix them with Codename One components within the same hierarchy (heavyweight/lightweight mixing)
Supports seamless Continuous Integration out of the box
To learn more about Codename One check out the about page you can download it for free right now.
Version 4.0 is nicknamed Taxi because of the Uber Clone application that was developed with it for the online course in the Codename One Academy.
The top 5 features of this release are covered in this short video, check out further details below…
Progressive Web App Support (PWA) - Progressive Web Apps allow us to try an application on the web and seamlessly transition to a native app. This makes user acquisition easier and installation frictionless. Codename One is the only tool in the world that supports PWA’s seamlessly
New Device Skins - We updated the look of Codename One by releasing 33 new device skins including iPhone X & Pixel 2 XL. We included support for non-rectangular device skins and better device fidelity. We also added the ability to grab a screenshot that includes the skin frame around it
Xcode 9.2 - Codename One apps are built using xcode 9.2. This change is seamless for most developers as the update happened on the build servers. Xcode 9.2 requires additional permission messages which are added automatically by the simulator
Update Framework - Updates to Codename One libraries are now delivered using a unified framework instead of separate adhoc tools
Continuous Integration Support - We now support Travis CI out of the box seamlessly. Adding support for additional CI tools should be just as easy
New Async JavaScript Interop API - The Java → JavaScript bridge with the embeddable browser component was completely replaced. The new implementation should be faster than the old system
Builtin Unit Tests - Unit tests to Codename One are integrated into the core repository and are executed with every commit
Improved Peer Components - Multiple bugs and minor issues were fixed in the peer component layer this effectively enabled the Uber clone to work properly with the native map
Better Hello World - The new Codename One projects generate better code that handles things such as network errors more effectively
GUI Builder Refinements - There were many refinements to the new GUI builder most notably:
Improved support for layout nesting in auto-layout mode - you can use all the existing layout managers within an autolayout parent
New Window Manager allows you to customize the positioning of the windows & palettes
Tabs component is supported again
Test Push In the Simulator - The simulator now supports testing push notification
There are many other features both big and small. Check out our blog and the github project history.
As we always do with a release we’d like to shine a spotlight on the things this version could do better and the things the next version can improve. Overall we are thrilled with this release but here are a few things we can do better:
On device debugging - I wasn’t optimistic about getting this out for 4.0 and I’m still not optimistic about 5.0. We already have a lot on our plate for 5.0 and this is a huge feature
Improved default themes & material design - we did a lot of work on the skins but didn’t move the native theme or make a separate material design theme. We need to do a lot of work on the default hello world applications to make them look great out of the door.
Overall while we implemented a lot of features in 4.0 we didn’t really address most of the problems we highlighted in this section when 3.8 was released. I’m not sure if we have enough time in the 5.0 cycle to improve that but hopefully we can at least move theming more aggressively again.
The 5.0 release cycle is relatively short & we already have a lot of things planned for it.
We should have the new social app tutorial in the Codename One Academy which will cover cloning Facebook.
Check out our survey results to see the future apps we'll release into the academy. Even if you never plan to signup to the academy this should be interesting as it gives you a good notion of what can be built with Codename One.
Other than that we’ll try to launch better docs and designs. We’ve put a lot of effort into improving our design capabilities and one of the big things we’d like to pick up again is app templates. In the past we released a few free themes as Codename One stubs. We’d like to do that again so developers can start from "something".
If you think we are doing a good job and appreciate our help please help us by:
Or just sign up for enterprise accounts which literally keep the lights on here… If your company can afford it please take the time and upgrade to enterprise, this will allow us to work on the things that are important for your company!
Thanks for reading this far and if you have any thoughts/suggestions of any kind please let us know!
Published by codenameone over 6 years ago
This is an interim release before the big 4.0 release in March. We are testing the waters with the new update process that should make releases and updates significantly easier.
There are multiple GUI builder, skin and API improvements in this release. They will be detailed in the 4.0 release coming out in 3-4 weeks.
Published by codenameone almost 7 years ago
We are thrilled to announce the release of Codename One 3.8. Codename One is an open source "Write Once Run Anywhere" mobile solution for Java developers!
This new release significantly refines the native look and feel of Codename One, it brings the GUI builder to a new level with styling support. It finally adds Mac OS appstore distribution support which means all the major appstores are now supported targets for Codename One applications.
Codename One is the only platform that...
To learn more about Codename One check out the about page you can download it for free right now.
As part of the release we significantly refined our developer guide which is now also available in print form on Amazon. Notice that this guide is available for free here & in pdf format. This developer guide is a community effort which you can contribute to as explained here.
The top 5 features of this release are covered in this short video, check out further details below...
Kotlin Support - Kotlin is now officially supported by Codename One and works out of the box
On Top Side Menu - The on top side menu adapts the side menu UI to render on-top of the application instead of below but it's really a complete rewrite of the old SideMenuBar
which was implemented in a problematic way. The new on-top mode works better with native peers such as maps and can be extended more easily
GUI Builder Styling Support - There are a lot of enhancements and refinements in the new GUI builder one of the big ticket features is the new style UI which allows you to style an element without leaving the GUI builder
Mac OS Appstore Support - We now support building signed Mac OS apps which means we now support all the major vendor appstores. We already support iOS/Android stores and Windows/Microsoft's store (via the UWP port). The Mac appstore was the last major vendor whose store we didn't support out of the box
Signal Handling & Fast UTF in ParparVM - ParparVM is our open source iOS VM. It now handles low level OS signals to catch illegal access and convert it to Java exceptions. This means performance is slightly better but more importantly: you can catch errors even when they originate from native code. We also made significant improvements to the UTF-8 decoding logic which should make apps that rely on localized data faster and more memory efficient
Theme Enhancements - We added many new capabilities into the Codename One themes specifically: Fractional padding/margin, Rounded border, Underline borders & more
Table Sorting - You can now sort a table by clicking on the column header
There are many other features both big and small. Check out our blog and the github project history.
As we always do with a release we'd like to shine a spotlight on the things this version could do better and the things the next version can improve. Overall we are thrilled with this release but here are a few things we can do better:
On device debugging - this was planned before for 3.7 but didn't make it. We have a running proof of concept but that also highlights the amount of work needed to bring this to production grade. We didn't think it will make it for 3.8 and I'm not optimistic about 4.0 with our current workload. We think this will be a great enhancement but right now we think theming is more important
Improved default themes & material design - we made huge strides in this area but we are still way behind and our demos still don't reflect the progress we made. Hopefully by the time 4.0 rolls around we'll be in a different place entirely
Theme & Localization - Steve added some better theming to the new GUI builder. We think we can improve on this further and generally improve theming. Localization is something that regressed a bit from the old GUI builder which allowed for great automatic localization. We need something more "seamless" in this department
We have way more time for the 4.0 release so we can probably fit in more things than we did in 3.8. One of the difficulties in 3.8 is that a lot of the time between 3.7 and 3.8 was spent in summer months that are less productive. We fully expect 4.0 to be far richer in terms of features.
By the time 4.0 rolls around we should have two new major demos/tutorials in the Codename One Academy.
We've already laid some ground work for the Uber style app and we plan to push it out before the end of the year. This continues the 3 major trends we are trying to drive:
Another big focus which we'll see in 4.0 is quality and continuous integration. Our QA process is now open as part of our continuous integration support. We are now running automated tests of all our commits on device farms which should make future versions of Codename One far more stable.
We got a record number of community pull requests during the 3.8 timeline, that is fantastic!
If you think we are doing a good job and appreciate our help please help us by:
Or just sign up for enterprise accounts which literally keep the lights on here... If your company can afford it please take the time and upgrade to enterprise, this will allow us to work on the things that are important for your company!
Thanks for reading this far and if you have any thoughts/suggestions of any kind please let us know!
Notice that this is a copy of the release announcement here: https://www.codenameone.com/blog/codename-one-3-8-live.html
Published by codenameone about 7 years ago
Up until now we only tagged major releases, this release focuses on stability and bug fixes. It includes many enhancements but basically builds on the 3.7 release.
Published by codenameone over 7 years ago
Codename One 3.7, the "Write Once Run Anywhere" mobile solution for Java developers is now live!
This exciting new release brings with it a surprising new overhaul of the Codename One GUI builder which now includes support to "auto-layout" allowing developers to place components with the ease/power of Photoshop or Illustrator..
Codename One is the only platform that...
To learn more about Codename One check out the about page you can download it for free right now.
Here are the top 5 features of this release illustrated in this short video, check out further details below.
GUI Builder Auto Layout - We now support an inset based GUI builder mode that allows positioning components in a far more fluid way. We are still working on tutorials for this new mode and it's highly experimental but you can start using it right now!
In addition to that we made numerous enhancements to the UX of the GUI builder further refining it
Live Style Customization - The UI design of the application can be customized directly from the simulator
Z-Ordering on All OS's - You can mix native components e.g. maps, video. With Codename One components and draw on top of them
Properties SQL & UI Binding - Support for database mapping (ORM), parsing & UI binding/generation seamlessly using the properties API
Rest API for Terse Networking - New builder style REST API that abstracts some of the verbosity of ConnectionRequest
VM API Enhancements - Added some core VM classes and API's such as java.lang.Number, CharSequence
, exception chaining etc.
Terse Syntax - New CN API allows developers to write more concise code, new helper API's such as addAll
& a jquery style component selector
Security Oriented API's - New API's for detecting certificates on https servers as well as API's for touch ID, jailbreak detection and more
Thread Helper & Threadsafe SQLite API's - A new API for communicating with threads & a new threadsafe wrapper for sqlite
Better Desktop/Web API's - We now support API's such as mouse cursor customization, split pane, mouse hover events etc. which allow more elaborate desktop apps. We also include an experimental new "desktop skin" to debug desktop apps
Experimental "On Top" Sidemenu & Form Layered Pane - Side menu can now be on top of the UI and potentially on top of the entire form with a new layered pane mode
ParparVM Performance Improvements - Some of the code such as method invocations will now compile to the C equivalent of that code in terms of performance, many basic numeric operations are much faster thanks to VM optimizations and code is up to 40% smaller over 3.6
Two Factor Authentication in Certificate Wizard - The certificate wizard now supports 2 factor authentication in your apple account
Faster iOS Builds - Build times in the Apple servers are up to x3 faster for some users with exceptionally long build times.
Test Recorder & Toolbar - The test recorder now works correctly with the toolbar
As we always do with a release we'd like to shine a spotlight on the things 3.7 can do better and the things 3.8 can improve on. Overall we are thrilled with this release but here are a few things we can do better:
On device debugging - this was planned for 3.7 but didn't make it. We have a running proof of concept but that also highlights the amount of work needed to bring this to production grade. Since 3.8 is relatively close by it's hard for us to say if it will be a feature of 3.8.
Improved default themes & material design - this is an area we need to spend more time on. We are attacking it one component at a time but that is often challenging. We can use your help in filing issues and pull requests to improve the situation. If you see something that doesn't look good or doesn't look native go to the issue tracker & create a new issue in it include a screenshot of how it looks now and a screenshot of how it should look. This helps us focus on the things that are important to our users. Even if we know about the problem an issue helps us focus!
Theme & Localization - The new GUI builder is starting to take shape and it's time to turn our attention to the other rolls that the old designer tool handles. We already made some improvements to styling but we can go further.
We completed almost everything we wanted to do for 3.7, to be fair that's not to hard as we delayed the release due to the bootcamp and that gave us extra time.
The next version will be out in mid November which already feels darn close by now so I'm not sure which ones of the lowlights above we'll be able to address by then but those are our biggest priorities not necessarily in that order.
The one feature that we did announce for 3.8 is Kotlin support. We ran a survey whose results included a bit of a surprise to us, it's something we'll discuss later.
Spread the word, please let people know about us.
Sign up for enterprise accounts, besides the huge benefits of an enterprise account these are the guys that keep the lights on here and allow us to build Codename One. If your company can afford it please take the time and upgrade to enterprise, this will allow us to work on the things that are important for your company!
Thanks for reading this far and if you have any thoughts/suggestions of any kind please feel free to post to the announcement page on Codename One's site!
Published by codenameone almost 8 years ago
Codename One, the "industry defining" Write Once Run Anywhere native mobile app platform for Java developers has just published version 3.6.
We're thrilled with this release whose key features are offline build support and official support for UWP (Universal Windows Platform). Starting with this release we are changing the scope for Codename One: Instead of trying to be "as good as native" we'd like to aim to be "better than native".
You can check out our press release here.
We already offer many advantages over native platform development:
With 3.6 we hammered down all of these to a fine tuned machine and moving forward we'd like to build the Codename One that is better than native.
You can see the full release announcement on the Codename One website where you can download the IDE plugins and related material.
Overall we are very happy with this release aaawe think we dotted the i's and crossed the t's. This is to a large part due to the delay of the release from December. We still had to push back some issues to 3.7 but that's always unavoidable.
The one thing we really didn't get out in this release is a new Codename One course which we've been working on for a while. We hope we'll get it done during the 3.7 era but video production is always a big effort and we just don't have enough hours in the day...
Version 3.7 work is already underway. We hope to get the z-ordering in native peers to work on all major platforms in this version. We think it will open up Codename One to a whole new type of application (e.g. Augmented Reality).
Our biggest wish for 3.7 is on-device-debugging but it's a big feature so it's unclear if it's something that we'll be able to deliver soon.
Spread the word, please let people know about us.
Sign up for enterprise accounts, besides the huge benefits of an enterprise account these are the guys that keep the lights on here and allow us to build Codename One. If your company can afford it please take the time and upgrade to enterprise, this will allow us to work on the things that are important for your company!
Published by codenameone about 8 years ago
We are thrilled to announce the immediate availability of Codename One 3.5!
Version 3.5 is a huge release that includes the long awaited Windows Universal Platform (UWP) support and brings the new GUI builder out of beta.
Toolbar
and proper fonts.With 3.6 we are aiming to introduce an offline build option for enterprise developers. We also have some other plans but they might stretch to 3.7.
The lowlight issues above are important to us for the 3.6 release and we'd like to improve on them.
Version 3.6 is scheduled for December of 2016. 3.7 is scheduled for April 4th 2017.
Published by codenameone over 8 years ago
We are thrilled to announce the immediate availability of Codename One 3.4!
Version 3.4 brings with it refinement and stability as its core features, this is a trend that we are very pleased with and intend to carry on to version 3.5.
Notice that you should always install the latest release of Codename One thru https://www.codenameone.com/download.html
You can see the full list of changes to Codename One in the github repository.
The following are things we are still working on or failed to bring to the front for this release. We are aware of them and are working on improving them:
Besides the lowlights above which must be addressed, there are several other things we are looking at for 3.5:
Codename One 3.5 is scheduled for Tuesday August 2nd 2016. Version 3.6 is currently scheduled for December of
2016.
Published by codenameone over 8 years ago
You can read the full release announcement and details here.
Notice that you should always install the latest release of Codename One thru https://www.codenameone.com/download.html
Up until now the logic for rendering the background of the component resided entirely within Component.java
& DefaultLookAndFeel.java
.
This allowed for a simple rendering logic that is implemented in a single place, however it didn't allow us to deeply optimize some operations in a platform specific way. We moved the rendering into CodenameOneImplementation.java
which allowed us to override the logic both on Android & iOS to deliver native grade performance on any device.
We rewrote the animation logic in Codename One for 3.3.
This broke some backwards compatibility but this was for a good cause as we now have a central class that manages all animation events going forward. This means that you should no longer get odd exceptions when using many animations in sequence.
As part of this enhancement we also added new animation types such as title scroll animation and the ability to animate a style object UIID.
We are redoing a lot of the Codename One documentation from scratch with Codename One 3.3. This is ongoing and we barely just started but the new documentation is far more readable, detailed and clear. Moving forward we are confident that our developer guide, JavaDocs & videos will be in aleague of their own!
FontImage
has been around for a while but up until now we didn't use it to its full extent. It required getting an icon font, configuring it and we just skipped it for some cases.
With 3.3 we integrated the material design icon font which makes adding flat icons to your application remarkably simple!
We continued the background process trend with 3.3 as we enabled both geofencing (to track device location in the background) and media playback in the background.
Codename One always supported embedding HTML & JavaScript but it didn't support embedding things such as the Cordova/PhoneGap API's.
With the new open source project we announced we can now convert many Cordova/PhoneGap apps to
Codename One apps and deliver quite a few compelling advantages.
A major focus of this release was making Codename One useful and attractive right out of the box. As part of that work we replaced the default icon, redid the hello world app to a more impressive (yet simple) demo and updated the default fonts.
Fonts were a difficult subject prior to 3.3. You could either use the portable but ugly system fonts, or go with the gorgeous but flaky TTF fonts. Both don't make sense when Android ships with the great Roboto font and iOS ships with the gorgeous Helvetica Neue font.
We now have support for a new font notation with the native: prefix. This notation (supported by the Designer), allows us to leverage the existing native fonts of the device which look both native and gorgeous.
In 3.2 we started moving towards terse syntax for container hierarchy construction and with 3.3 we brought that to fruition. We added methods such as an add method that accepts an image. We added factory encloseIn methods to almost all of the layout managers, we added form constructors that accept layout managers and much more!
Our iOS VM has been open source from the start but we didn't encourage its usage outside of Codename One. This changed with 3.3 and we are actively promoting the ParparVM OpenSource project.
Unrelated to that we made a lot of performance improvements to the core VM translation logic, it should be very competitive in terms of generated code to pretty much everything else on the market. Especially with API calls as our entire API is hand-coded and highly optimized.
We didn't have support for Java venerable Properties file format before 3.3. Surprisingly developers didn't really complain about that ommission as we support XML, CSV & JSON.
Now we can add Properties to that list!
3.3 will be the last release that includes an implementation of the codescan API for QR code/barcode reading. We will remove this API completely and we ask users to migrate their code to use the new codescan cn1lib. When we initially introduced this API we didn't have support for cn1libs and integrated this into the core directly.
Published by codenameone almost 9 years ago
You can read the full release announcement and details here.
Notice that you should always install the latest release of Codename One thru https://www.codenameone.com/download.html
The new GUI builder is a big departure from our existing designer tool. This tool is now in "technology preview" status meaning that its not quite ready for prime time but we want feedback on its direction and issues.
Local notifications are similar to push notifications, except that they are initiated locally by the app, rather than remotely. They are useful for communicating information to the user while the app is running in the background, since they manifest themselves as pop-up notifications on supported devices.
We completely overhauled the way Codename One handles push services and added several long time RFE's to the mix.
cn1libs now include the ability to include build hints thus integrate more seamlessly without complex integration instructions.
Thanks to a community contribution we took a deep look at the rendering code and are using faster code for tiling/string rendering.
The Toolbar API has really picked up, in order to make it more useful for Tablets we added the ability to keep the SideMenuBar that's builtin to it always on.
getAllStyles() allows writing code that is more concise to perform an operation on multiple style objects at once.
New integration for Facebooks "invite a friend" feature that simplifies viral marketing for your app.
A shorter syntax for adding components and labels into the UI resulting in less code for the same functionality.
We fixed many things in this implementation over the past three months and feel confident enough to switch this into the default.
Published by codenameone about 9 years ago
You can read the full release announcement and details here.
Notice that you should always install the latest release of Codename One thru https://www.codenameone.com/download.html
Support for Java 8 features such as Lambdas, try with resources etc. This is a beta grade feature but is showing great promise so far.
Simple generation of certificates and provisioning for itunes without a Mac using a wizard interface.
Provides the ability to signin to various services in a generic way including builtin support for Google, Facebook and generic oAuth 2.0 services.
Support for using icon fonts to represent images in the UI thus reducing the reliance on multi-images.
As part of migrating away from Google App Engine we shifted crash reports to use new servers which make them far more usable by embedding the logs directly into the email body.
Published by codenameone about 9 years ago
You can read the far more detailed release announcement here.
Notice that you should always install the latest release of Codename One thru https://www.codenameone.com/download.html
When Codename One debuted we used XMLVM as the underlying iOS virtual machine abstraction. XMLVM is an excellent product but its unmaintained and its goals are too different from the goals of Codename One. The new VM includes some features that would be remarkably hard to achieve with XMLVM such as: proper stack traces, faster builds (2x overall!), smaller code size, concurrent GC, deep OS binding (String - NSString relationship) etc.
Allows compiling Codename One applications to JavaScript client side webapps without server side code. Notice that this support includes threading support.
Notice that this feature will be restricted to enterprise developers once it enters beta.
The Java VM work is based on TeaVM an OSS Java-JavaScript VM.
The charts API supports drawing a wide range of charts such as bar, pie, line etc. It supports animating charts and is based on the aChartEngine Android API.
New beautiful and functional themes are now available through the plugins and the designer tool.
Toolbar API
More advanced and highly customizable API for handling the title area. It allows adding search to the title, animating its appearance/folding, placing commands arbitrarily and using the side menu.
Simplified image download to an icon or preview, that allows to implicitly apply special effects to said image (e.g. round corners, scaling etc.).
The main Codename One demos are now built-into the plugin so you can try them immediately without fixing classpaths and without downloading additional software.
We rewrote the graphics pipeline on Android to work better in Android 4.x+ and use hardware acceleration where applicable. This new pipeline also includes support for the Shape & transform API's.
We added a new regular expression package and a new validation framework that simplifies error highlighting for input. As part of that work we also presented a rudimentary masked input UI.
There are 3 new DPI levels in Codename One all of which are now supported by the designer: DENSITY_560, DENSITY_2HD & DENSITY_4K.
The builtin HTML support was improved by providing a way to open a hierarchy of files and not just a self contained HTML file. As part of this improvement we also added support to the tar file format.
The morph transition was inspired by the Material design UI, converting a component on one form to a component on another form. The flip transition provides an impressive 3d effect thats trivial to apply to any form or transition.
A new "modless" dialog that can "float" on top of the UI using the layered pane capability of the parent form
We redid the developer guide from the ground up converting it to asciidoc and integrating it into the website in a more fluent way. We increased its breadth by over 50%.
Apple introduced a new way to test mobile applications for up to 1000 beta testers based on the testflight framework (but not to be confused with the old testflightapp.com product). We now support distributing apps via this process for pro users.
MiG layout is one of the popular cross platform Java layout managers that works across FX, Swing, AWT and now on Codename One as well...
Facebook made a lot of changes to its API such as requiring a special publish permission and migrating graph calls to version 2.0. Both are now integrated into Codename One.
The webservice wizard allows us to generate RPC calls to the server including servlet and client stubs.
We now support updating and setting a badge on an app icons in iOS devices.
We finally added support for TCP sockets into Codename One.
This is an implementation of a feature that was requested quite a while back. Historically, when moving from one text field to the next the VKB would fold and reopen. We now allow you to seamlessly move between input fields.