FAQs#
What is Codename One? How does it work?#
Codename One is an open-source cross-platform WORA (Write Once Run Anywhere) mobile app development framework that lets Java and Kotlin developers build truly native multi-platform apps with high code reuse.
Apps are compiled down to native code for strong performance and smooth UX.
Is Codename One free? Is it open source?#
Yes. Codename One is open source and can be used commercially and non-commercially with no royalties or restrictions.
The optional cloud build service includes a free quota and lets developers on Windows/Linux build native iOS apps.
What are the limits of the free version?#
These limits apply to cloud builds only.
- 100 build credits per month.
- 1 build credit per build (iOS uses 8 credits due to Mac build costs).
- 8.5 MB user JAR size limit.
You can still use generated apps commercially. Paid plans mainly add higher quotas and advanced cloud features.
Can I cancel or change plan anytime?#
Yes. Codename One includes a 30-day money back guarantee for paid purchases.
What payment methods do you accept?#
Credit card and debit card through the Codename One secure signup flow.
For annual Pro/Enterprise subscriptions, SWIFT transfer and invoicing are available. Use the site chat to request a pro-forma invoice.
Are there limits on number of apps?#
No. Pricing is per developer seat, not per app.
Will my app still work if I cancel subscription?#
Yes. Built apps continue to work.
Cloud runtime services (e.g., push) require an active subscription.
Is source code sent to the cloud?#
No source code is sent for normal builds. Cloud builds process compiled bytecode.
Native platform sources may be uploaded when required for native compilation.
What is Crash Protection?#
Pro and Enterprise plans include a managed crash-reporting service that captures uncaught exceptions in your shipping app, symbolicates the stack trace, and files a deduplicated issue on your own GitHub repository. There is no separate dashboard — you triage from GitHub Issues. Crashes hit by multiple devices roll up into a single issue with a counter and a “last seen” timestamp.
How do I turn Crash Protection on?#
Add codename1.crashProtection.enabled=true to your codenameone_settings.properties, install the Codename One Crash Protection GitHub App on the repo you want crashes to land in, and map your package to that repo from cloud.codenameone.com/console/index.html → Repo mappings. See the Developer Guide for the full Crash Protection chapter, including the on-device CrashProtection API.
What are the storage limits for Crash Protection?#
Symbol bundles (Android mapping.txt, iOS dSYM, native-port debug info) are gzipped and stored against your account’s quota:
- Pro: 100 MB compressed, 3-week retention
- Enterprise: 500 MB compressed, 6-week retention
mapping.txt compresses ~10x and dSYMs ~2x, so the quota typically holds several recent release builds per app. You can free space at any time by removing an old build’s symbols (or a whole app’s enrollment) from the Tracked apps tab in the console.
Where do my users’ crashes end up?#
On your GitHub repository, as issues. Each unique stack-trace fingerprint becomes one issue; subsequent occurrences bump a counter on the same issue (not a new one). Close the issue when the underlying bug is fixed; if the same fingerprint recurs later, the issue is reopened.
Codename One never reads or persists the unscrubbed crash payload — emails are partially redacted on the device before transmission, and the issue body is the only canonical record.
Can I disable Crash Protection on specific platforms?#
Yes. Per-platform opt-outs are independent of the master switch — set e.g. codename1.crashProtection.and.enabled=false to skip Android while still capturing iOS / Mac / Linux / Windows crashes.








