Android

Charlesを快適に使うためにやっていること

Charles Web Debugging Proxy とても便利ですよね。 今でこそ、Stetho や Flipper などの、Androidアプリ側に仕込むライブラリでも事足りるようにもなってきましたが、通信内容の改ざんや特定のリクエストのみ他のサーバに転送したりなど、多岐にわたる機能…

Androidプロジェクトをシュッと開く

Androidプロジェクトを開く時、Android Studioのメニューから開くのはとてもめんどうくさい。File -> Open... と選択してからプロジェクトの在り処を選択する必要がある。めんどうだ。マウス操作めんどう。 実はコマンドラインからプロジェクトをAndroid Stu…

adb-pecoを書き直しました

複数デバイスが接続されていたときにデバイスを選択する支援をしてくれる adb-peco ですが、この度、Rubyでコードを書き直しました。 通常だとmore than one device/emulator と出力されるようなシチュエーションでも、こんな風にコマンド実行時にデバイス選…

Androidアプリのビルドが終わったらにゃーんと猫の声が聞こえるようにする

Androidアプリのビルドはターミナル派でしょうか、それともAndroid Studio派でしょうか。 最近はInstant Runや、接続されているデバイスの情報から不要なリソースを削ることでビルドの高速化されるなど、Android Studioでのビルドは魅力的なところが多いので…

Androidエンジニアは自分専用のDockerイメージを作るべきだと思った

初めてDockerイメージを作ったのでエントリに書いておきます。タイトルはすこし言い過ぎな感じはありますが、CIにDocker使っている人は自分でDockerイメージ作った方がいいよねって話です。 私とCI CIという言葉もかなり広まり、会社で使うだけではなく個人…

RoundRectShapeの引数について調査した

角丸画像をコードから生成したくて、ShapeDrawableを使うことになった。 角丸にするにはRoundRectShapeをShapeDrawableに食わせるんだけど、その引数がドキュメントだけだと分からなかったので検証した。 RoundRectShape(float outerRadii, RectF inset, flo…

ObjectAnimatorでTextViewの内容を書き換える

ObjectAnimatorおもろいなー setNumber(int)を持つNumberTextViewというクラスを作り public class NumberTextView extends AppCompatTextView { public NumberTextView(Context context) { super(context); } public NumberTextView(Context context, Attri…

ProgressBarの値をアニメーションで変更する

↑こういうことやりたいんだけど、ProgressBar#setProgress(:int)だとアニメーションしてくれない。 そうだ、ObjectAnimatorを使ってアニメーションを実現しよう。 <layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" tools:context=".activity.MainActivity" > </layout>

Androidエミュレータにテキストをペーストすることができない時代がありました

Androidエミュレータは母艦とクリップボードの共有がされないので、パスワードなどの複雑なテキストを毎回手打ちしなくてはならなくて面倒でした。 そこで、簡単にコピペできるような関数を作りました。 function paste_in_android() { e=$(pbpaste | sed -e…

コマンドラインから特定のクラスのみテストする

次のコマンドで実現できる ./gradlew connectedAndroidTest -Pcom.android.tools.instrumentationTestRunnerArgs=class=com.example.Util com.android.tools.instrumentationTestRunnerArgsにはいろんなオプションが指定でき、どんなオプションがあるかは次…