手書きは面倒。。
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("HomeActivity", "onCreate");
}
メソッド化
public class MyUtils {
public static void log(Object obj) {
Log.d(obj.getClass().getSimpleName(), "(" + obj.hashCode() + "):" + Thread.currentThread().getStackTrace()[3].getMethodName());
}
}
呼び出し側
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MyUtils.log(this);
}
吐かれたログ
D/Tab1Fragment﹕ (549828625):onViewCreated
InstanceStateのsaveとrestoreを簡単にできる
class ExampleActivity extends Activity {
@Icicle String username; // save/restoreされる
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Icepick.restoreInstanceState(this, savedInstanceState);
}
@Override public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Icepick.saveInstanceState(this, outState);
}
}
Assertionライブラリ。fest-androidの後継プロジェクト
assertThat(frodo.getName()).isEqualTo("Frodo");
JSONassert
JSONに特化したAssertionライブラリ
JSONObject data = getRESTData("/friends/367.json");
String expected = "{friends:[{id:123,name:\"Corby Page\"},{id:456,name:\"Carter Page\"}]}";
JSONAssert.assertEquals(expected, data, false);
コマンドの検索
コード補完決定時のTabとEnterの挙動の違い。
Enterだと補完文字が挿入されるだけだが、Tabだと前方にある文字列を置換する。
パラメータの情報を表示する。
ActiveなPanel/Tabを切り替える
データがどこから来たものか、どこに渡されるのかを表示する。ただし、静的解析なので参考程度に。
ファイルをブランチ間で比較する
Break Pointにヒットした時にログを出す
Break PointをDisableにする
変数の中身を表示する
オブジェクトにラベルを付ける
選択範囲の拡大縮小
ファイル履歴。incrementalに絞り込み可能。
メソッドの順序を入れ替える
行をまとめる
Editorで表示しているファイルをFinderで開く。直接のショートカットは無いのでSelect inから行う。
メソッド・インナークラスを移動する
Editorの中にあるメソッドやクラスを検索する
メソッドの呼び出し階層を表示する