How to import Android Studio project in Eclipse?

Solution 1:

As the others say, a full import is not possible, but just try a manual 'import'. The key files for an Android project are the Java sourcecode (src directory), the resource XML files and the Manifest. Just create a new Android project in Eclipse and simply copy these files over. You may have to create a new package structure, so construct the necessary packages and copy each sourcefile over and refactor the package name if necessary. If you use any additional libraries, you may have to manually import them as well.

Solution 2:

IMPORTING FROM ANDROID STUDIO INTO ECLIPSE

http://www.nodeclipse.org/projects/gradle/android/Importing-from-Android-Studio-into-Eclipse describes steps needed

Copy-paste here as of September 2014


welcome to raise issue on GitHub.

First, it is easier to create project with Eclipse-ADT, add build.gradle and import into Android Studio by selecting that build.gradle, then other way around.

Single-project

see step 2 below

Multi-project
  1. Add .project file into root
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>MyApplicationName</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
    </buildSpec>
    <natures>
    </natures>
</projectDescription>

(you can also use Nodeclipse CLI ) e.g. from froject root C:\Users\username\AndroidStudioProjects\MyApplicationName run nodeclipse -g

Copy that path (e.g. in Android Studio "Copy Path" Ctrl+Shift+C),
in Eclipse File -> Import -> General / Existing Project into workspace

At this point, you don't really need to have ADT. Eclipse is like Viewer, but you already can launch Gradle build , installDebug or run on Device (when you have defined run task)

Further operation you can do within Eclipse

  1. For every module (as mobile or wear) do

2.1 Add 2 standard .files for Android project as below (you can get them by creating new project with Eclipse-ADT, only need to change "src" path="src/main/java"):

  • .project :
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>MyApplicationName-mobile</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>com.android.ide.eclipse.adt.ApkBuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>com.android.ide.eclipse.adt.AndroidNature</nature>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>
</projectDescription>
  • .classpath :
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src/main/java"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>


(source: nodeclipse.org)

2.2 create OS symbolic links

On Lunix

ln -s src/main/res res
ln -s src/main/AndroidManifest.xml AndroidManifest.xml

On Windows I don't yet know grace way that would work always:

symbolic links on Windows

mklink /D res src/main/res
mklink AndroidManifest.xml src/main/AndroidManifest.xml

Windows 7 has mklink util, but it just did not work on my PC.

I found a great Junction util and could do junction res src/main/res, but for link to file is created .lnk file (aka Windows shortcut).

I discovered that Git Bash can execute ln -s src/main/AndroidManifest.xml AndroidManifest.xml but it creates copy, not link.


(source: nodeclipse.org)

2.3 Add gen folder

2.4 add project.properties

target=android-15

2.5 Import as existing project

click on mobile , Ctrl+Alt+C
File -> Import -> General / Existing Project into workspace

DONE.

Of course limitations are:

  • Eclipse is still using ADT to build
  • dependencies added via gradle are not visible to ADT (but jars in libs folder are shared of course)

Good things are:

  • you can use more stable Eclipse ADT for developing and debugging
  • at the same time you can use and/or experiment with new build system in the same IDE as second one.

http://www.nodeclipse.org/projects/gradle

Solution 3:

try install the gradle plugin in the eclipse. THis will work for some apps.

The following update sites are available:

http://dist.springsource.com/milestone/TOOLS/gradle (latest milestone build) http://dist.springsource.com/release/TOOLS/gradle (latest release) Pasting the above URLs into a web browser will not work. You need to follow the instructions given below to use an Eclipse update site.

In Eclipse Open Help >> Install New Software Paste a Gradle update site link into the "Work with" text box. Click the Add button at the top of the screen. Ensure that the option "Group Items by Category" is enabled. Select the top-level node 'Extensions / Gradle Integration'. Click "Next". This may take a while. Review the list of software that will be installed. Click "Next" again. Review and accept licence agreements and Click "Finish".

enter image description here