2012年10月6日土曜日

[Android] Unity + Eclipse の unityplayerproxyactivity.jarの欠落を解決する

Where is com.unity3d.player.unityplayerproxyactivity.jar

Unityで開発したAndroidアプリケーションをEclipseでカスタマイズするため、これらのコンテンツを参考にさせていただきました。
UnityでAndroidの機能を拡張する2つの手法とは(3/3) - @IT:
유니티 게임 개발의 정석 のGoogle翻訳 http://www.unitystudy.net/
ところが、com.unity3d.player.unityplayerproxyactivity.jar の欠落によりビルドできないという事態に陥ってしまいました。
いろいろ試して解決することができたのでその手順を公開します。

このブログを書いている時点のバージョンは次の通りです。
・Unity 3.5.3f3
・Eclipse Indigo Service Release 2 (32bit) + Pleiades日本語化プラグイン
・Android SDK r20

Unityで開発したアプリをEclipseでカスタマイズしてビルドするためには、大まかに次の手順が必要です。

1.
UnityをAndroid用にビルドしたあと、Unityプロジェクトのフォルダー内の
Temp\StagingArea
を Eclipse に Android Project from Existing Code としてインポートする

2.
インポートしたプロジェクトのプロパティーを開き、「Is Library」として設定する。

3.
新しいEclipseに新しいAndroid用プロジェクトを作成し、1.でインポートしたプロジェクトをライブラリーとして参照する。
ビルドパスにUnityのclasses.jarを追加する。
Unityのプロジェクトのassetsフォルダーの内容を新しいプロジェクトに移動する。


ところが、このままだと1.でライブラリーとしてインポートしたUnityのプロジェクトにエラーがおきてしまいます。

3.で新しく作成したプロジェクトも com.unity3d.player.unityplayerproxyactivity.jar が欠落のためビルドすることができません。

解決方法
1.でインポートしたプロジェクトを右クリックし、AndroidのProject Build Target をAndroid4.0に設定します。
OKをクリックしてもコンテキストメニューのリフレッシュを実行しても、なぜかエラーが消えません。
ライブラリーとしてインポートしたプロジェクトのAndroidManifest.xmlを開いて、内容を変えないように上書き保存してください。
(ファイルの最後に改行を追加して上書き保存する、など)

com.unity3d.player.unityplayerproxyactivity.jar が作成されました。
よく見ると com.unity3d.player.unityplayerproxyactivity.jar が2カ所にできてます。
これでビルドできるようになりました。

Unityで作ったAndroidゲーム Shuffle!V 公開中です!

以上、参考になれば幸いです。

関連ブログ
[Unity 3D] Blender could not be found.を解決するには

0 件のコメント:

コメントを投稿