今さらながらEclipseで書かれたAndroidプロジェクトをAndroidStudioに移行した。


先日下記の記事の通り、EclipseのAndroidDepeloperToolsの正式サポートが終了したばかりのこのときに、古いEclipseプロジェクトをAndroid Studioに移行することになりました。

Eclipse Android デベロッパー ツールのサポート終了

基本的にはこちらの移行手順のまま進めていけば問題はないが、若干のハマりポイントがあったので、補足してみようと思います。
Eclipse から Android Studio への移行

Eclipse の .project ファイルと .classpath ファイルは消さないこと。

移行手順も書かれていますが、このファイルの有無でAndroid Studioは当該プロジェクトがEclipseプロジェクトかどうかを判断しているようです。
別の誰かから譲渡されたようなプロジェクトで本ファイルがない場合はインポートできないので、一度Eclipseでインポートしてからでも作成しておくとよいです。

.ideaディレクトリ、gradleディレクトリ、build.gradleは削除しておくこと。

反対にこれらがEclipseプロジェクトにあると邪魔をします。
Android Studioが通常のAndroid Studioのプロジェクトだと勘違いしてしまいますので、削除しておいてください。

ライブラリプロジェクトはメインプロジェクトの中には置かない。

たまに下記のようなディレクトリ構成で管理をしている場合もあると思いますが、メインプロジェクト内にライブラリプロジェクトがあると移行がうまくいかないです。

workspace
 |_Main Project
   |_assets
   |_res
   |_src
   |_Library Project
   | |_assets
   | |_res
   | |_src
   | |_AndroidManifest.xml
   |
   |_AndroidManifest.xml


Android Studioではworkspaceという概念は Project に変わり、EclipseのProject は Module に変わります。
EclipseからAndroid Studioに移行する場合、新しくMain Projectを作成し、Eclipseのメインプロジェクトを Main Moduleにするのですが、この構成のまま移行しようとすると メインプロジェクトがAndroid StudioのProject、ライブラリプロジェクトがMain Moduleになることがあります。
なので、ライブラリプロジェクトはメインプロジェクトの外に配置し、手順にある通り、インポートする project.properties ファイルまたは .classpath ファイルで、Eclipse ADT のワークスペースのライブラリ ファイルへの参照をすべてコメントアウトしてください。

【Enter a value for workspace path ....】エラーが出てもあわてない。

インポート処理を進めていると以下のような画面が出ることがある。

この画面の右側に <click to edit>と出ているが、これはAndroid Studio が移行対象ファイルのフルパスがわからない場合に出る模様。
なので、対象ファイルのフルパスを入力すれば進めることができる。

フルパスを入れない場合は【Enter a value for workspace path ....】エラーが出るので、注意。