Photo of colorful suitcases

Over the years, there’s been plenty of debate surrounding the pros and cons of the two primary Android integrated design environments (IDEs): Android Studio and the Eclipse IDE. Android Studio was built specifically for Android app development, while Eclipse IDE is more of a shell that is extended through plugins. In the end, a lot of it boiled down to developer preference. Both IDEs arrived at the same result, they just took slightly different paths to get there.

On Jun 26, 2015, however, Google drew a line in the sand when it announced that Android Studio would be officially dropping its support for the Android Developer Tools (ADT) Plugin that gives the Eclipse IDE the functionality it needs to create Android apps. Android Studio would be the official IDE for Android development, allowing Google to focus its energy on the tool’s performance.

This may have effectively closed the debate on the two IDEs, but it’s still possible to work within Eclipse and there are plenty of active app projects being built in Eclipse. So how critical is it to migrate these existing projects over to Android Studio, what will change, and what should you expect from the migration? Read on for a few key differences to consider.

Making the Move to Android Studio

Migrating existing Eclipse apps over into Android Studio should theoretically be pretty easy, but there will always be bumps in the road and manual edits that come along with migrating projects. If you’ve currently built an Android app in Eclipse, here’s a quick look at what you can expect migrating over to Android Studio, and a few things you might run into along the way.

1. How projects are organized is a bit different in Android Studio vs. Eclipse.

In Eclipse “Workspaces” are how related projects are managed. You can work on more than one app in a Workspace, which contains related configurations like perspectives, bindings, and other preferences you may want to reuse in different projects. In Android Studio, projects are organized by “Modules.” Every part of a project, from the main code to functions to smaller libraries, inhabits its own module. Similarly, “Library projects” in Eclipse become “Library modules” when imported into Android Studio.

2. Similar (but improved) layout designer graphic interfaces.

If you’re used to laying out your visuals in a graphical user interface (UI) editor, both IDEs offer this with a view that lets you see your edits from a user’s perspective. Android Studio’s GUI has drag-and-drop functionality and shows what your app will look like on a variety of device screens in real-time, which is helpful when tweaking visuals at the design stage. It’s possible to edit UI elements or other related elements right in the editor in both IDEs, so you won’t have to expect as much of an adjustment in this department.

3. Code completion saves you time—and is slightly improved in Android Studio.

Aside from drawing out the interface, on the coding side there’s code completion to reduce the amount of time programmers spend cranking out code. Android Studio has arguably a bit better code completion, in three levels: Basic Completion, Smart Completion, and Statement Completion that can be accessed through keyboard shortcuts.

4. Getting used to the Gradle.

If you didn’t use the Gradle build system before, this would be one of the biggest changes to adapt two between the two IDEs. Eclipse began by offering Apache Ant, but then offered a Gradle plugin. If you have an Ant-based project, it’s not difficult to import to Gradle. Gradle is also easy to learn and great for beginners.

The Groovy-based Gradle build tools are quite integrated in Android Studio. Every project is based in a build.gradle file (instead of a build.xml file). While some module settings are automatically updated in the corresponding build.gradle files, sometimes they need to be manually edited and configured.

5. If you had dependencies before, they’ll need to be configured.

Also similar to Eclipse, modules can have dependencies you’ll need to establish. Android Studio supports both Gradle and Maven dependencies, so you’ll need to configure build variants.

6. Test directories aren’t separate, they’re in the main sourceset.

The beauty of this is that developers “can easily add and maintain your instrumentation test code within the same project view.”

A Few Android Studio Pros

A few other pluses with migrating over to Android Studio include:

  • The ability to seamlessly build apps for all Android phones, tablets, wearables, TV, and Android Auto.
  • It’s built for Android (the official Android IDE) so you can expect better support for Gradle.
  • The module-based way of organizing code lets you divide your project up by functionality, making it easy to build, test, and debug each module independently from one another.
  • There’s native support for Google Cloud, including Google App Engine, where you can run code in the cloud rather than on your own server. Get native integration with Maps, for example.
  • Built-in GitHub integration makes it an excellent tool for teams, but it also supports other version control systems (VCSs) like Mercurial or Google Cloud Source Repositories.

Migrating from Eclipse to Android Studio

Android has said that migrating over from Eclipse could be as simple as clicking “Import Project” in the File menu, but realistically you should always plan for a few bumps in the road. In their step-by-step migration guide, Google breaks down prerequisites for migrating to and configuring Android Studio.

Ready to make the move? Now’s a good time to get familiar with Android Studio’s features and have a conversation with your mobile developers about making the switch.

Get more work done, faster with freelance help. Post your first project today. Let’s get started