Android Studioでは(というかGradleでは)Build Flavorとかいうのがあって,同じアプリをちょっと違う内容でビルドできるとかいう話だ.
というわけで,Android SKKでキリル文字付きバージョンを統合できるかと思っていろいろ試したけど,どうも無理っぽい.すべては,そもそもJavaに#ifdefっぽい条件コンパイルがないせいである.
たとえば,ClassAがfoo flavorにだけ存在する状態で,
if (BuildConfig.FLAVOR.equals("foo")) {
a = ClassA.someMethod();
}
みたいなことをやると,それ以外のflavorではビルドエラーになる.#ifdefとかと違って,この中が「完全に無視される」というわけじゃないからだろう.くそう面倒くせえ.今までどおりdiffを手でパッチしたほうがマシか.
あと,最近のAndroid Studioではエミュレータが速くなったからgenymotion使わなくてもいいかな,と思ってたけど,そうでもなかった.
まず,なんか最近のやつだとスリープから復帰できないときが多い.さらに,それより問題なのは,イメージのアップデート時に/tmpに巨大な容量を必要とすることだ.おれの/tmpはRAMディスクなので,そんな5GBとか6GBとか気軽に要求されても困る.Android Studioを立ち上げて,メニューのhelp→Edit Custom VM Optionsとかで一時的に-Djava.io.tmpdir=/home/foo/tmpみたいなのを入れれば回避できるけど,いちいちそんなことするのも面倒くさい.やっぱりgenymotionは使いやすいと思う.