Codename One v6.0 Release Notes
Release Date: 2019-02-27 // 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:
- 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 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.
π Highlights of this Release
π The top 5 features of this release are covered in this short video, check out further details below...
- π Codename One Build - we can now monitor builds from Android and iOS. The app is also available for every device through web PWA. It works with push notification and is built with Codename One!
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 nowReply 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 dateFontImage rotateAnimation -
FontImage
lets you animate an icon so it rotates infinitely effectively making every component into anInfiniteProgress
β 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 problemButton 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.
Onwards to 7.0 - Video
π 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.
We Need your Help
π· If you think we are doing a good job and appreciate our help please help us by:
π Edit our docs
π Edit our sources and submit bug fixes
β¬οΈ 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!
Previous changes from v5.0
-
π 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...
- 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 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.
π Highlights of this Release
π 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 widgetsLow 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.
π On-device webserver
π Auto-reconnect for websockets
There are many other features both big and small. Check out our blog and the github project history.
Onwards to 6.0 - Chat
π 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.
We Need your Help
π· If you think we are doing a good job and appreciate our help please help us by:
π Edit our docs
π Edit our sources and submit bug fixes
β¬οΈ 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!