android 電池の最適化 | Doze | スタンバイ | バッテリーセーバー

以前にも書きましたが、いろいろな節電処理が自動に行われているということで。

「電池の最適化」とは、バックグラウンド時にアプリを「スリープ」すること。

👉 ラジオや音楽アプリが勝手に終了する場合 

まずは、adb でカレントなステータスを確認したり、エミュレートしたりして自在に試してみることですよね。

以下の公式リファレンスベースに確認しながら関連の操作や語彙に馴染んでいきましょう。

👉 Doze とアプリ スタンバイ用に最適化する  |  Android デベロッパー  |  Android Developers 

 

Dozeモード

端末を使っていなければアプリのバックグラウンド処理を保留する

アイドルモード開始


$ adb shell dumpsys deviceidle force-idle

アイドルモード終了


$ adb shell dumpsys deviceidle unforce

デバイスを再度アクティブにする


$ adb shell dumpsys battery reset

 

スタンバイモード

アプリを操作していなければ、そのアプリのバックグランド処理を保留します。

スタンバイモードにする


$ adb shell dumpsys battery unplug
$ adb shell am set-inactive {PACKAGENAME} true

アプリ復帰する


$ adb shell am set-inactive {PACKAGENAME} false
$ adb shell am get-inactive {PACKAGENAME}

👉 電源に関する問題をテストする  |  Android デベロッパー  |  Android Developers 

 

アプリ スタンバイ バケット 

各アプリは、その使用パターンに基づいて 5 つの優先度バケットのいずれかに振り分けられます。システムは、各アプリが入っているバケットに基づいて、そのアプリで使用できるデバイス リソースを制限します。


$ adb shell dumpsys battery unplug


$ adb shell am set-standby-bucket {PACKAGENAME} active|working_set|frequent|rare


$ adb shell am set-standby-bucket {PACKAGENAME1} {BUCKET1} {PACKAGENAME2} {BUCKET2}...


$ adb shell am get-standby-bucket [PACKAGENAME]

👉 アプリ スタンバイ バケット  |  Android デベロッパー  |  Android Developers 

 

バックグラウンド制限


$ adb shell cmd appops set {PACKAGENAME} RUN_ANY_IN_BACKGROUND ignore


$ adb shell cmd appops set {PACKAGENAME} RUN_ANY_IN_BACKGROUND allow

 

バッテリーセーバー


$ adb shell dumpsys battery unplug
$ adb shell settings put global low_power 1
$ adb shell dumpsys battery reset

👉 電源管理に関する制限  |  Android デベロッパー  |  Android Developers 

バッテリー操作系


$ adb shell dumpsys battery


$ adb shell dumpsys battery -h

電源を抜く


$ adb shell dumpsys battery unplug 

30%にセット


$ adb shell dumpsys battery set level 30

電源を元に戻す


$ adb shell dumpsys battery reset

 

まとめ

端末や対象のアプリそれぞれのステータスを確認しながら進むと良いででしょう。


$ adb shell dumpsys deviceidle


$ adb shell dumpsys battery


$ adb shell settings list {system|secure|global}


$ adb shell am get-inactive {PACKAGENAME}


$ adb shell am get-standby-bucket [PACKAGENAME]


$ adb shell cmd appops get {PACKAGENAME}

カレントな状態が目で見てはっきり分かると、

自然に次にやるべきことはきちんと見つかります。

👉 電源に関する問題をテストする  |  Android デベロッパー  |  Android Developers 


Google音声文字変換の起動方法

便利です。

いろいろ使えます。



しかし、Android のバージョンによって起動方法が違います。

 

アイコンをタップ

Pixel3以前 (Android Pie 9 まで?) はこの方法です。

アプリ自体はPlayストアからダウンロードします。

起動は、他のアプリと同様にアイコンをタップします。

 

2本指で上スワイプ

Android10以降は、この方法が良さげです。



まず、設定から有効化します。

[設定] - [ユーザ補助] から
「音声文字変換」を「ON」にします。

有効化しておけば、

あとは起動したくなったときに

2本指で上スワイプです。

👉 音声文字変換 - Google Play のアプリ 
👉 音声文字変換を使用する - Android のユーザー補助機能 ヘルプ 

 

その他

「自動字幕起こし」てのが、最近のAndroidにはついてますが、

現在は「英語のみ」となっています。


AndroidスマホをWEBカメラとして使う【macOS】

みんな、

WEBカメラが売り切れで、

「スマホをWEBカメラとして使う」

というのをやってみたりしてるんか。


👉 iVCam - Use mobile phone as a PC webcam | E2ESOFT 


👉 Dev47Apps 

あれ、どちらのアプリも mac で使えない!(泣)

 

スマホ画面をパソコンにストリーミング

カメラアプリや鏡アプリなど写されている画面をパソコンにライブで飛ばします。

なるべくバッテリーを消費しないものがいいでしょう。


👉 Genymobile/scrcpy: Display and control your Android device 


👉 Vysor 



上記、2つとも無料アプリです。

ともに、スマホ画面をパソコンに、USBケーブルまたはWiFi経由でストリーミングすることができます。

また、パソコン上から、スマホ画面を操作することもできます。

👉 【無料】使わなくなったスマホをライブカメラにしておじいちゃんを監視したい 

 

仮想カメラ (Virtual Camera)

次は、パソコン上の画面の一部をカメラで撮影しているものと認識させ、「カメラを選択」のダイアログからWEBカメラとして選択できること、です。

ここの選択肢の中に、「仮想カメラ」として認識されて表示されればよい。

そんなアプリを2つ。


👉 CamTwist 


👉 Live video software & Virtual Webcam | ManyCam 

それぞれ、少し古かったり、有料オプションが必要だったりします。

 

まとめ

スマホをWEBカメラ代わりにするの面倒くさすぎね?

当然どれも負荷は高くなる。

フツーに zoom アプリとか入れたらダメなの?

👉 macOS Ventura で iPhone を WEBカメラ として使う hatena-bookmark
👉 OBS出力から 仮想カメラ デバイス を作成する【macOS】 
👉 ZOOM Cloud Meetings - Apps on Google Play 
👉 IP Webcam - Apps on Google Play