2025/11/17

Android Studioから起動するエミュレータにコマンドラインオプションを設定する

Android Studioから起動するエミュレータにコマンドラインオプションを設定できないかと検索していたら

How to pass command line options to the emulator in Android Studio? - Stack Overflow

に答えがあったので。


起動オプションを設定するには環境変数「studio.emu.params」に値を設定します。注意点としてはスペースを使用せず、「,」 (カンマ)で繋いでいきます。

例えばタイムゾーンを東京にする場合コマンドラインオプションでは

-timezone Asia/Tokyo

と「-timezone」と「Asia/Tokyo」の間にスペースありますが、環境変数で設定する場合、スペースをカンマで置換した形

$ set studio.emu.params=-timezone,Asia/Tokyo

にします。


Android Studio Otter | 2025.2.1 では https://android.googlesource.com/platform/tools/adt/idea/+/refs/tags/studio-2025.2.1/android/src/com/android/tools/idea/avdmanager/AvdManagerConnection.kt#308

で環境変数を取得して設定していました。コミットログを見ると7年以上前からあったらしい。

Diff - dd839c9436e425381256cb2e984305c09a7fbbd9^! - platform/tools/adt/idea - Git at Google

もっと早く知りたかった


2025/07/19

Pixel 6a でバッテリーのサイクル回数を見る

先日発表されたGoogle Pixel 6a バッテリー パフォーマンス プログラム で使用しているPixel 6aが対象だったのと、2025年7月のアップデート (BP2A.250705.008) を入れた後でも、Pixel 6aではバッテリーのサイクル回数が375回以上にならないとサイクル回数が表示されないようです。


なのでバッテリーのサイクル回数を見る方法のメモ書き。


アプリをインストールして見る


「android バッテリー サイクル回数」などで検索すれば出てきます。


コマンドで見る (恐らくAndroid 12以上)


$ adb shell cat /sys/class/power_supply/battery/cycle_count

でサイクル回数が出力されます。
# Pixel 3 (Android 12)でも出力されたのでAndroid 12でもサイクル回数が取得できる?


デバイス診断で見る


Pixel 6aの設定アプリからは消えてしまったサイクル回数はデバイス診断を起動すれば見れます。
amコマンド

$ adb shell am start -n com.android.devicediagnostics/.MainActivity

で起動するか、ショートカットを作成するなどして、デバイス診断を起動をします。

「コンポーネントの状態」 →「バッテリーの状態」でサイクル回数が表示されます。 (初回利用日時は取得できないようです)




アプリを作る(?) (Android 14以上)


Intent intent = registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
if (intent != null) {
    int cycleCount = intent.getIntExtra(BatteryManager.EXTRA_CYCLE_COUNT, -1);
    ~ cycleCount を画面等に出す ~
}