EGit + Eclipse

📅 2013/05/13

Android Eclipse git

既存キーを何度やっても蹴られまくるので途方に暮れた. 解決方法は以下のサイトを参照しました.

cd ~/.ssh
openssl rsa -in id_rsa -out id_rsa-eclipse -des3

これに加えて設定完了後にEclipseを再起動しないとid_rsaを参照し続けるので パスフレーズでid_rsa-eclipseにちゃんとなっているか確認すること. user.nameとuser.emailは特に設定する必要なし.

Eclipse(32bit) on Ubuntu 12.04 LTS(64bit)

📅 2013/05/08

Android Eclipse

毎回環境構築でハマるのでメモ.

Error executiong aapt: Cannot run program "/home/android/dev/android-sdks/platform-tools/aapt": error2, そのようなファイルやディレクトリはありません: error=2 そのようなファイルやディレクトリはありません

ここを参照しました.

sudo apt-get update
sudo apt-get install ia32-libs

InflateException: Binary XML file line #X: Error inflating class <unknown>

📅 2013/04/29

Android

どうも^Mが入っていてInflateに失敗するようだ。 今年から開発環境をUbuntu + Eclipseに移行した。 Windows + EclipseよりEclipseのほうが不安定で稀に落ちる。 落ちたときの保存がうまくいってないらしくこのエラーで一時間ほど頭を抱えることになった。 どうも改行コードがバグってCR+LFになって保存されてしまうようだ。 普通のEclipseのビューでは分かり難いのだがviなどで開くと一発でわかった。 Eclipseのメニューに改行コード変換メニューがあったので今回はそれで対応した。

発生したException

Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class <unknown>
0at android.view.LayoutInflater.createView(LayoutInflater.java:606)

KiesをインストールせずにUSBドライバーを入れる

📅 2013/01/03

Android

Kiesを入れるとAndroid端末をつなげるごとにエラーダイアログがでて鬱陶しい思いをしたことはありませんか?そんな思いをしないために KiesSetup.exeからUSBドライバのみを抜き出してみる。 必要なものは以下のソフトのみでOK。

Universal Extractor

まず、インストールが進まないように開発モードにしたAndroid端末をつなげておきます。 次にKiesSetup.exeを実行する。 Windows7だと以下のフォルダ内のサブフォルダにSamsung Kies.msiが生成されるので日付と*.msiで検索して 探します。

C:\Users\ユーザ名\AppData\Local\Downloaded Installations

ここでやっとUniversal Extractorの出番です。Universal Extractorを実行すると解凍したいファイルと解凍先フォルダを指定するように出てくるので適当に解凍する。このときに2番目の「MsiX Extraction」を選択してください。 解凍が完了するとBinary.NewBinaryとISSetupFile.SetupFileが大量に生成されるがスルーしてData1.cabを解凍する。するとsamsung_usb_driver_for_mobilというファイルが解凍ファイルの中に含まれるので拡張子にexeをつけるとUSBドライバのインストーラになります。

Developer AndroidなWebページをpdfで携帯

📅 2013/01/03

Android

Android開発やってるとAPI Guideとかをpdfで持ち運びたくなります。 毎度zipでクレと思うので自分でpdf化してみる。 用意するものはAcrobatX1本のみ。 WebページをPDF化というメニューがあったのでこれ始まったか?と思ったけど甘かった。 階層指定は微妙なので必要な部分のURLだけ抜き出してみた。

残念ながらAcrobatXはURLリストを渡してそれをPDF化することはできない。 ローカルからはファイルを読み込むことはできるようだ。 悩んだ結果location.href="apiguides url"のみを書いたHTMLを食わせてPDFを生成してみるとうまくいった!! 当たり前のようだがリダイレクト後のページもPDF化してくれるようだ。

StringBuilderちゃんと使えてる?

📅 2012/09/30

Android

“Hoge"+"Hoge"するときはStringBuilderを使って.append(“Hoge”).append(“Hoge”)しましょう。 そう1年前のエンジニアアカデミーで聞いてそうしてきた。

バイトコードを読む機会があったのでふと今のコンパイラだとどうなっているんだろうと検証してみた。

バイトコードを見てもらうとわかるように単純に文字列を結合しているところも きちんとappendで追加するように最適化されている。 appendを書く作業が減ってかなり楽になると思う。 ただし以下のコードで文字列を結合する場合はStringBuilderが2つnewされるので素直にappendしましょう。

String hoge = "hoge";
hoge + = "hige";

機会があれば他の最適化周りも調べてみよう。