Showing posts with label Android Studio. Show all posts
Showing posts with label Android Studio. Show all posts

Thursday, June 13, 2013

Unable to access jarfile /Applications/Android

Android StudioからRun ProGuardでapkを作成しようとすると下記のエラーが発生する
Unable to access jarfile /Applications/Android

/Applications/Android Studio.app/sdk/tools/proguard/bin/proguard.sh 内の
java -jar $PROGUARD_HOME/lib/proguard.jar "$@"

java -jar "$PROGUARD_HOME/lib/proguard.jar" "$@"
の様に変更


参考

Thursday, June 6, 2013

Unexpected value from nativeGetEnabledTags

Androidで以下のログが無駄に出てしまう
06-06 04:10:01.461    1738-1738/com.example.sample             W/Trace: Unexpected value from nativeGetEnabledTags: 0

SDKのバグっぽいので、とりあえずフィルタを設定する

[Edit Filter Configuration]を選択

[by Log Message]に
^(?!.*(nativeGetEnabledTags)).*$
を設定



参考

Friday, May 31, 2013

Android Studioでエミュレータのhosts変更

開発等でエミュレータのhostsを書き換えたいとき


エミュレータの起動オプションを追加設定

[Run]→[Edit Configurations...]
を開き
[Emulator]タブを選択
[Additional command line options]にチェックを入れ
-partition-size 512
と入力
(他のサイトを参照すると128でも良さそうだったのだが、上手くいかなかったため512を設定)
[OK]を押して終了


エミュレータ内のhosts書き換え

あらかじめadbのpathを通しておく
$ export PATH=$PATH:/Applications/Android\ Studio.app/sdk/platform-tools

エミュレータを普通にRunして、remount(エミュレータの /system 以下を読み書き可にする)
$ adb remount
このときエラーが出る場合がある
error: device offline
→ デバイスがConnectされてない、もう一度Runしてみる
error: more than one device and emulator
→ 2台以上のデバイス&エミュレータがConnectされているので1つにする

エミュレータのhostsを取得(必要なら)
$ adb pull /system/etc/hosts ~/hosts

エミュレータのhostsを置き換える
$ adb push ~/hosts /system/etc/hosts
上記の起動オプションを設定しなかった場合、ここで以下のエラーが出てしまう
failed to copy '/Users/xxxxxxx/hosts' to '/system/etc/hosts': Out of memory

エミュレータのhostsを確認
$ adb shell
$ cat /System/etc/hosts

remount, pushはエミュレータ起動時に毎回行う必要がある


参考

Android Studioでエミュレータ高速化

Androidエミュレータ遅すぎワロタ...と思ってたら、これは普通に改善するらしいということなのでAndroid Studio開発環境で高速化を謀ってみる

環境
Mac OS X 10.8.3
Android Studio 0.1.1


Packageのインストール

まず必要なpackageを入れる
[Tools]→[Android]→[SDK Manager]
を開いて
開発で必要なOSの[Intel x86 Atom System Image]をインストール
ここではとりあえず最新の
[Android 4.2.2 (API 17)]→[Intel x86 Atom System Image]
をインストール

加えて、
[Extras]→[Intel x86 Emulator Accelerator (HAXM)]
をインストール


IntelHAXMのインストール

/Applications/Android Studio.app/sdk/extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.dmg
上記のdmgからインストールする(バージョンは1.0.6でした)

もし不要になった場合のIntelHAXMのアンインストールは
$ cd /System/Library/Extensions/intelhaxm.kext/Contents/Resources
$ sudo ./uninstall.sh



エミュレータの設定


[Tools]→[Android]→[AVD Manager]
を開いて[New]を選択

AVD Name : 適当
Device : 適当
Target : [Intel x86 Atom System Image]をインストールしたOS
ここでは[Android 4.2.2 - API Level 17]を選択
CPU/ABI : [Intel Atom (x86)]
Emulation Options : [Use Host GPU]にチェック

後はお好みで、[OK]を押して作成
(以前入れた設定を再利用して上記のようにEditしてもエミュレータが上手く動かなかったので1から新規で作成した方がいいかもしれない)


エミュレータでデバッグ

後はいつも通りで上記で作成したエミュレータを選択してRun

ログに
HAX is working and emulator runs in fast virt mode
と出るはず

初回起動だとアプリが何故かインストールされないのでエミュレータ起動後にもう一度Runしてみる


これでなんとかMacでも開発できそうかな


参考


Monday, May 27, 2013

この文字は、エンコーディングsjisにマップできません。

Android Studio で *.javaに日本語を使用すると上記のコンパイルエラーが発生してしまうためInfo.plistを修正

/Applications/Android Studio.app/Contents/Info.plist
の99行目あたりの
<key>VMOptions</key>
<string>-ea -Dsun.io.useCanonCaches=false -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar</string>
の<string>に -Dgroovy.source.encoding=UTF-8 -Dfile.encoding=UTF-8 を追加する
<key>VMOptions</key>
<string>-ea -Dsun.io.useCanonCaches=false -XX:+HeapDumpOnOutOfMemoryError -Xverify:none -Xbootclasspath/a:../lib/boot.jar -Dgroovy.source.encoding=UTF-8 -Dfile.encoding=UTF-8</string>


参考

Friday, May 17, 2013

Android Studio

ADTを入れた矢先、Android Studioなる開発ツールが公開されたっぽいのでこれを入れてみる

http://developer.android.com/sdk/installing/studio.html
からダウンロードしてインストール
簡単ですね

PhpStormと同じものをベースに作られてるみたいでぱっと見なんか似てます
適当なプロジェクトを作成して、エミュレータで実行とかも簡単に出来ました
ただ、相変わらずエミュレータは重い気がします

今までのeclipseでどーのこーのするより使いやすそうな感じがしました

今は以前より大分開発環境が整ってきたんですね