Eclipse から Android Studio へ移行する【pd-for-android 付き】


Android SDK をアップデートしたら、ついに google-play-services_lib が無くなってしまった。

ということは、Android Studio に Eclipse で開発してた全プロジェクトを移行しないと、開発継続できないかも知れないってこと?
google-play-services_lib を使ってなければ今のところ大丈夫なのかも知れないケド、今後、こんな感じのことばかりになりそうな予感。
そして、ワタシの作ってるアプリは、ほぼ、google-playservices_lib を使っているのだった。
だって Admob 使っているんだもの。

で、その Admob 、何やら本日、Firebase とやらと統合されている模様。
どうも、その対応で、Google-play-services に変更があって、あえなく google-play-services_lib 消滅ということになったみたいね。

ということで、Eclipse で開発していた プロジェクトを Android Studio に移行する手順を書いておく。
pd-for-android とか、外部ライブラリを使ってなければもう少しラクなのかも知れない。

一応、その辺、含めて備忘録。

1. 準備

pd-for-android の aar 化
コチラをご覧ください

google-services.json の入手
もし、Admob を使っているようだったら、Admob のサイトにログインして、「分析」メニューをクリックして、アプリの一覧にある 「Firebase にリンク」をクリックして、アプリ用の google-serveices.json をダウンロード。


2. プロジェクトをインポートする

Android Studio を起動して、「import project(Eclipse ADT, Gradle, etc.) 」をクリックして、Eclipse の workspace のプロジェクトを選択。

AS Project import


Android Studio の プロジェクトの保存場所を聞かれるので指定する。

すると どうやってインポート(変換?)するか訪ねられるので、「Replace library source with dependencies, when possible」 のチェックを外して「Finish」。

AS import option


インポート中に「Select Modules to Include in Project Subset」のウィンドウが表示されるので、アプリ以外のモジュールのチェックは全部外してOK。
※画像では全部にチェックが入ってますが、最終的に1個だけチェックが入ります。


AS module select


以上で、プロジェクトの読み込みは完了。


3. PdCore ライブラリーの追加

こちらの後半を参照。


4. google-services の追加

ダウンロードした google-services.json を、先ほど生成した プロジェクト・フォルダにコピーする。

プロジェクトの build.gradle のdependencies に classpath 'com.google.gms:google-services:3.0.0' を追加。

    dependencies {
        classpath 'com.android.tools.build:gradle:2.1.0'
        classpath 'com.google.gms:google-services:3.0.0'
    }



アプリの build.grafdle の dependencies に compile 'com.google.firebase:firebase-ads:9.0.0' と compile 'com.google.android.gms:play-services-ads:9.0.0' を追加。

dependencies {
    compile 'com.google.firebase:firebase-ads:9.0.0'
    compile 'com.google.android.gms:play-services-ads:9.0.0'
    compile 'org.puredata.android:pd-core:1.0.1'
}



公式の解説は コチラ

以上で、Android Studio への移行作業は完了です。

ただ、今のところ、一発でビルドが通ったプロジェクトはありません。
compileSdkVersion や、compile 'com.android.support:appcompat-v7:' のバージョンの調整が必要そう。

そして、ビルドが通ったと思って Run すると、実機で FATAL EXCEPTION が起きるのだった。
追跡調査だな。

【 追記 】

大事なことを書き忘れていた。
Android Studio では res/raw 内のファイル名の規則で「.」を使ってはいけないみたいです。
なので、もし Pd パッチのファイル名を .pd もしくは .pd.zip にしている場合は、拡張子を削除します。

Refactor > Rename で拡張子を削除するか、Finder で、プロジェクトルート/アプリ/src/main/res/raw 内の pd パッチの拡張子を削除すればOKです。


【 追記 その2 】

コッチのほうが間違いが少ないかも~

スポンサーサイト

コメント

非公開コメント