genymotionのすすめ
公開日:
:
最終更新日:2014/09/28
Android, 備忘録 Android, cocos2d-x, genymotion
Android開発においてしばしば挙がる不満として、エミュレータのもっさり感があります。
この対処法として、
- エミュレータ作成時、Intelのアーキテクチャを選択して作成する。
- サードパーティ、genymotionのエミュレータを利用する。
があります。
一つ目の方法は、そもそももっさりの原因はエミュレータとPCでのアーキテクチャが異なるためなので、PCと同じアーキテクチャでエミュレータも作りましょう、というやり方。
このやり方もそこそこもっさり感は解消されるんだけど、今回は2つ目の「genymotion」の利用について記しておく。
要は、BirtualBox内での仮想デバイスとしてエミュレータを作りましょうってこと。
Oracle者の提供するVirtualBoxもインストールしないといけない等、一つ目の方法に比べて若干導入が面倒な気もしたが、1つ目の方法はPC再起動が必要だったり、動作も若干不安定らしいので、2つ目の方法のほうが個人的にはおすすめ。
実際に起動してみると、下手な実機端末よりよっぽどヌルヌル動いてくれて感動するはず。たぶん。
NDKとか使ってるcocos2d-xだと使えないんじゃないかとか思ってたけどそんなこともない。
手順についてまとめようかと思ったが、既に多くまとめられているし、特につまりどころもなかったので、割愛する。
このサイト(http://dev.classmethod.jp/smartphone/android/genymotion-install/)がわかりやすい。
今はWindowsについてはVirtualBoxバンドル版もでてるみたいで、VirtualBox事前インストールの必要もないみたい。
んで、備忘録として書いておきたいのは、cocos2d-xで作成したアプリケーションをgenymotionでシミュレートする方法。
そう、デフォじゃ動いてくれないの。対処は簡単で、下記2つのファイルをちょちょっと編集するだけでおk。
・jni/Application.mk
APP_STL := gnustl_static APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -DCOCOS2D_DEBUG=1 #これを追記 APP_ABI := armeabi x86
・cocos2dx/platform/android/java/src/org/cocos2dx/lib/Cocos2dxActivity.java
private final static boolean isAndroidEmulator() { String model = Build.MODEL; Log.d(TAG, "model=" + model); String product = Build.PRODUCT; Log.d(TAG, "product=" + product); boolean isEmulator = false; if (product != null) { //**************以下編集部*****************// //isEmulator = product.equals("sdk") || product.contains("_sdk") || product.contains("sdk_"); // ++ for genymotion 以下に書き換え isEmulator = product.equals("sdk") || product.contains("_sdk") || product.contains("sdk_") || product.contains("vbox"); //**************ここまで編集部*****************// } Log.d(TAG, "isEmulator=" + isEmulator); return isEmulator; }
はい、アーキテクチャを追記して、エミュレータの条件にvboxも加えてあげるだけ。
んで実際にリリースするときはjni/Application.mkの追記が残ったままだと、余分にアーキテクチャが追加されてパッケージがでかくなるので、消しておくほうが吉みたい。
以上、genymotionを利用することで、エミュレータの起動、動作サクサク、マルチタッチも対応で、開発効率あがるの。
はやく使っときゃよかった。。。
GoogleAdsense
関連記事
-
-
bash設定ファイルについてまとめてみた
仮想環境を組んだ時に、環境変数が所どころ未設定なことがあった。 環境変数の設定にはbashの設定フ
-
-
クラックツールHydraでベーシック認証を突破してみる
kali linuxにデフォルトでインストールされているツール「Hydra」を利用して、ベーシック認
-
-
PHPのextensionが読み込まれない問題…
大したあれではないが、ちょっと詰まったのでメモ。。。 事のぼったんは久々にWordPressを
-
-
Android4.4(API19)KitKatでのGraphicalLayout,AdMob問題
Androidの新バージョンKitKatがリリースされてもう結構経つが、いまさら我が開発環境でも導入
-
-
【Android】難読化ツールProguard設定まとめ
Android開発環境の1つであるEclipseでは、標準でAndroidプロジェクトの難読化ツール
-
-
Vimプラグイン「NERDTree」設定・コマンド備忘録
Vimのプラグインである「NERDTree」について、設定・コマンドを備忘録としてまとめておきます。
-
-
【Node.js】 Cookieの取り扱いまとめ
最近流行りのNode.jsですが、Cookieに関して、いくつかお決まりの取り扱い方があり、
-
-
【Androidエラー】Conversion to Dalvik format failed with error 1
Androidにおいて、アプリケーションを作成し終え、いざパッケージをエクスポートっ!!というところ
-
-
パスワードクラックツール JOHN THE RIPPER 使い方まとめ
パスワードクラッキングツールである「JOHN THE RIPPER」の使い方を備忘録としてまとめてお
-
-
【Android】代表的な脆弱性まとめ ~ファイルアクセス権について~
近年、スマートフォンの普及に伴い、Android, iPhone, WindowsPhone? ユー