Bring the Java language to new platforms: .NET, iOS, macOS, Android, the JVM, and more. Share the non-UI code that matters, while building native apps for each target.
Java, Beyond the JVM
Iodine brings the Java language over to new platforms. You can use your existing Java knowledge to write code for .NET, iOS, macOS, Android, the JVM, and more.
For example, if you are an Android developer, you can create a native iOS version of your app in a language you already know, while potentially reusing and sharing a lot of your existing app's code and logic.
Iodine is designed as a full superset of Java 8, with additional improvements and enhancements on top. Existing Android or Java SE code should compile right away, so you can move a project over smoothly and then start expanding it to more native platforms.
Key Benefits
Iodine keeps Java familiar while giving it the reach of the Elements toolchain.
- A better Android and JDK8 development experience than traditional Android Studio or NetBeans workflows.
- A more advanced Java language that can keep evolving with the rest of Elements.
- More target platforms for Java code, including .NET, Cocoa, Android, Java, WebAssembly, Windows, and Linux.
Iodine in Action
Use Iodine in Water, on iOS, and on Android, with the same Java language and the same Elements project model.
The Platforms
RemObjects Iodine lets you compile Java code for many different target platforms. A target can be an operating system such as Windows or macOS, or a broader runtime such as Java or .NET.
The same language features are available on each platform, and sharing code between platforms is straightforward. At the same time, Iodine stays a strong native fit on each platform, with full access to native APIs, frameworks, UI widgets, and lower-level capabilities.
.NET includes the regular .NET Framework, Mono, .NET Core, ASP.NET, WinRT, and Universal Windows Projects. It is a great target for Windows GUI apps, cross-platform servers, command line tools, and websites. Read More
Cocoa lets you build for macOS, iOS, iPadOS, tvOS, and watchOS with direct access to Objective-C runtime classes and APIs, as well as lower-level C and POSIX APIs. Read More
Android supports both the standard Java-based Android SDK and native Android NDK extensions, giving you full access to the platform plus room for lower-level and higher-performance work where needed. Read More
Java compiles to Java bytecode and runs anywhere the Java VM is supported. Read More
WebAssembly lets you build modules that run in the browser and interact with JavaScript and the HTML DOM. Read More
Windows native builds target the lower-level Win32 API or the Delphi RTL/VCL. Read More
Linux gives you native Linux projects against low-level libc and POSIX APIs. Read More
Read more about the platforms or browse the docs.
Work on Windows or Mac
RemObjects Iodine comes with Fire and Water, our own development environments for Mac and Windows. Fire and Water rethink what a modern IDE should look like from the ground up: fast, lean, and unobtrusive, while staying practical for daily development work.
Iodine also integrates deeply with Visual Studio 2017 or later, if that remains your preferred environment on Windows.
Whether on Windows or Mac, you can develop for every platform Iodine supports, deploy right to your iOS and Android devices, and move comfortably between targets without changing languages.
Fire
Our Mac-native Elements IDE, built for fast editing, focused workflows, and native deployment across Apple and beyond.
Read More
Water
Our lightweight Windows IDE for the full Elements toolchain, designed to stay fast and practical on everyday projects.
Read More
Visual Studio
Iodine also integrates deeply with Visual Studio, if that remains your preferred environment on Windows.
Read More
Check out RemObjects C#, Swift or Oxygene!