【デバッグ接続】アプリの自動起動を停止する「強制停止」を素早く実行

Androidのアプリの中には、端末の起動時やアプリのインストール時などに自動的に実行される機能を持っている物があるが、インストールされたばかりで一度も起動されたことが無いアプリは、自動起動が行われない「ストップ状態」になっている。
一度起動したことがあるアプリも、アプリ管理画面の「強制停止」を実行することでストップ状態に戻すことが可能だ。この機能を利用すれば、たまにしか使わないのに自動実行されて動作を重くしているアプリを、アンインストールすることなく封印できるぞ。
だが、アプリを使うたびに再度「強制停止」を実行するのは、少々面倒くさい。
より効率よく強制停止を活用したければ、端末をパソコンにUSB接続しての「デバッグ接続」を利用しよう。「adb shell am force-stop 」の後にアプリのパッケージ名を加えたコマンドを実行することで、当該アプリを強制停止できる。
コマンドをBATファイルに記述しておけば、次回からはダブルクリック一発で実行できる。複数のアプリをまとめて強制停止したり、ファイルバックアップなどのメンテナンス処理と一緒に実行してもいいだろう。




001

Google Playストアのアプリ個別ページのURLなどで、強制停止したいアプリのパッケージ名を調べよう。


002

端末をパソコンにデバッグ接続し、コマンドプロンプトを開いたら、「adb shell am force-stop 」に続いてパッケージ名を入力して実行しよう。
コマンドプロンプトへの「貼り付け」は、右クリックメニューから実行できる。


003

アプリの詳細管理画面を開けば、左上の「強制停止」ボタンが薄暗くなって、実行済みの状態になっていることが確認できるはずだ。



全てのアプリを強制停止するBATファイル

大量のアプリをインストールしていると、無駄にバックグラウンド実行されているアプリを全て見つけ出して強制停止するのは面倒くさい。
インストールされている全てのアプリを強制停止してから、使っているアプリだけを起動して解除していけば、使っていないアプリを全てストップ状態に出来るはずだ。
以下のような内容をメモ帳などのテキストエディタで入力して拡張子「.bat」のファイルに保存して実行すればいい。複数の端末を接続している場合などは、「SET ADB=」の行に「-s」に続いてデバイスIDを付け加えよう。
ただし、この方法を実行すると、重要な役目のために自動実行されているのに存在を忘れてしまっているアプリまで停止されたままになってしまう恐れがあるので注意が必要だ。
なお、「pm list packages」の後ろの「-3」は、システムアプリを除外して列挙するというオプションパラメータだ。削除すればシステムアプリも全て対象となるが、不具合が生じる可能性が高まるので、やめておいた方がいいだろう。

SET ADB="%~dp0adb.exe"
setlocal enabledelayedexpansion
FOR /F "delims=" %%a IN ('%ADB% shell pm list packages -3') DO SET pk=%%a&&SET pk=!pk:~8,-1!&&%ADB% shell am force-stop !pk!

関連記事

2014年11月06日10時37分 公開 | カテゴリー: チューンアップ | キーワード: | Short URL
このエントリーをはてなブックマークに追加

最新記事