Codename One is an open-source cross-platform framework designed to enable write once, run anywhere development for multiple mobile and desktop operating systems including Android, iOS, Windows, and MacOS. Created by Chen Fishbein and Shai Almog, co-founders of the Lightweight User Interface Toolkit (LWUIT), it was announced in 2012. Codename One enhances LWUIT by providing a simulator and cloud-based build servers that convert Java bytecode into native applications, simplifying cross-platform mobile app development.
Architecture
Developers using Codename One build their app using various Java IDEs like Eclipse, NetBeans or IntelliJ IDEA; they need the Codename One plugin to be installed on either IDE.4 Applications can be created either via the GUI builder tool or via code using standard Java. Running/debugging the application is possible via the standard IDE tools and the Codename One simulator.56
To build a native application, developers sign in and register with the Codename One build server. They then send builds to the cloud based build server. Then they can download the native app from the build server to run on the device or submit it to the store.7 Since the build server performs static translation of the code into a native application, it is no longer required after the application has been compiled.89
Codename One also supports the ability to use an offline "in-house" build cloud, which removes the use of Codename One build servers completely.10
Native
The developers of Codename One define the platform as a native code generator but clarify that native widgets are usually not used to render the user interfaces of Codename One applications. This allows for great portability but has also come under fire from some critics of the lightweight approach.11
Open source
The Codename One project is a combination of open source and software as a service. Most of the client-side code is open source, including the iOS, Android, Windows, JavaScript, RIM and J2ME ports.12 The server build code and the Codename One LIVE! Tool are proprietary.13
Community
Codename One claimed 200,000 downloads of its SDK as of release 1.1 on May 20, 2013.14 It has since released version 3.0 and claims 180 million applications installed on devices and 40,000 developers using the tool.15
See also
- Free and open-source software portal
References
"What Is Codename One". Archived from the original on October 24, 2012. Retrieved June 18, 2013. http://codenameone.blogspot.com/2012/01/what-is-codename-one.html ↩
"Codename One Developers Guide | Xcode | Ios". Scribd. https://www.scribd.com/doc/95684851/Codename-One-Developers-Guide ↩
"mobile - How does Codename One work?". Stack Overflow. https://stackoverflow.com/questions/10639766/how-does-codename-one-work ↩
"Download Java IOS Development and Mobile App Plugins - Codename One". www.codenameone.com. Archived from the original on June 21, 2013. Retrieved June 18, 2013. http://www.codenameone.com/download.html ↩
"How Do I? - Codename One". www.codenameone.com. Archived from the original on June 21, 2013. Retrieved June 18, 2013. http://www.codenameone.com/how-do-i.html ↩
"mobile - How does Codename One work?". Stack Overflow. Archived from the original on December 28, 2022. Retrieved August 13, 2023. https://stackoverflow.com/questions/10639766/how-does-codename-one-work/10646336 ↩
"Cross Platform IOS, Iphone Mobile App Development Using Java". www.codenameone.com. Archived from the original on June 20, 2013. Retrieved June 18, 2013. http://www.codenameone.com/build-server.html ↩
"FAQ - Codename One". codenameone.com. Archived from the original on May 22, 2013. Retrieved June 18, 2013. http://codenameone.com/faq.html ↩
"'codenameone' tag wiki". Stack Overflow. Archived from the original on August 26, 2016. Retrieved July 25, 2016. https://stackoverflow.com/tags/codenameone/info ↩
"Corporate Server - Codename One". www.codenameone.com. Archived from the original on October 22, 2014. Retrieved October 25, 2014. http://www.codenameone.com/corporate-server.html ↩
"Understanding Peer (native) Components & Why Codename One is so portable - Codename One". www.codenameone.com. May 2, 2014. http://www.codenameone.com/blog/understanding-peer-native-components-why-codename-one-is-so-portable.html ↩
"FAQ - Codename One". codenameone.com. Archived from the original on May 22, 2013. Retrieved June 18, 2013. http://codenameone.com/faq.html ↩
"Write once run anywhere native mobile apps using with Java 8 or Kotlin. Supports iOS (iPhone/iPad), Android, Windows (UWP) & others: codenameone/CodenameOne". October 9, 2019 – via GitHub. https://github.com/codenameone/CodenameOne ↩
"With 200,000 SDK Downloads, Mobile Development Platform Codename One Announces Version 1.1". SBWire (Press release). May 20, 2013. http://www.sbwire.com/press-releases/with-200000-sdk-downloads-mobile-development-platform-codename-one-announces-version-11-253990.htm ↩
"Cross Platform IOS, Iphone Mobile App Development Using Java". www.codenameone.com. https://www.codenameone.com/ ↩