Cocos2dxのサンプルプロジェクトを実行しようとした際に、UnsatisfiedLinkErrorが発生したときの対処法です.
1.問題
Eclipseにサンプルプロジェクト、Cocos2dxをインストールしてビルドが正常に成功した済み.
この状態でアプリを実行しようとすると以下のエラーが出る場合が有ります.
1 2 3 4 |
Caused by: java.lang.UnsatisfiedLinkError: Couldn't load game: findLibrary returned null at java.lang.Runtime.loadLibrary(Runtime.java:365) at java.lang.System.loadLibrary(System.java:535) at com.first.cocos2dx.samplecocos2dxandroid.<clinit>(samplecocos2dxandroid.java:37) |
このとき実機側を見ると、エラーのポップアップのみが表示されます.
2.解決策
cppのコンパイルを行っていないことが原因です.
cocosで作成したプロジェクトのproj.android/build_native.pyを実行してからアプリを実行することで解消することができます.
pythonスクリプトを実行する代わりに以下のコマンドでもビルド可能です.
1 |
$ cocos compile -p android |
将来的にはcocosでpythonスクリプトがなくなるとアナウンスもされているため、こちらのコマンドに慣れておいた方がよいかとも思います.