App: Objective-C to Java - O2J automatic source code translator
Developer: StockSpy Apps Inc.
Genres: Developer Tools, Business

O2J automates one way conversion of Objective-C source code to Java. It greatly reduces development time when porting Objective-C to Java. We estimate 80% time savings for most projects.

Pro Access In App Purchase lets you translate entire projects without any limit on files, lines of code per file or line length.

WARNING: Do not expect the tool to produce completely error free Java code! You will likely need to spend time to customize and optimize the conversion settings for your project to reduce the number of errors. Some code may not be translatable and will require manual conversion. We recommend testing every function of your converted code to make sure the translated code works as expected. That said, we believe the tool greatly reduces the time necessary for porting tasks for the vast majority of cases! 

The tool is highly sophisticated and customizable. You can customize type mappings from Objective-C to Java as well as method mappings with an easy to use template system. Conversion is super fast is run directly on your Mac.

Here are some of the translator features...
-Translates Implementations/Interfaces to Classes
-Translates Protocols to Interfaces
-Translates @property to getters and setters
-Converts init methods to constructors
-Supports NSDictionary and NSArray @{... : ...} and @[...] literals.
-Preserves formatting and comments inside your methods.
-Includes mappings for commonly used types and methods.
-Converts Blocks to generated Java interface equivalents
-Translates Methods with support for methods with multiple parameters
-Infers types for common Java collections: HashMap, ArrayList, HashSet
-Gathers type information from user specified header files to improve conversion.
-Allows manual customization of generated code using @Converted, @Ported and @Porting class/interface annotations.
-Supports code using ARC or manual memory management.

If you're new to Java you may find this tool valuable as a aid for learning Java if you have Objective-C experience.

Release notes:
Improved console messages for diagnosing conversion issues.