Android 7.0・7.1・8.0・8.1・9でアプリを強制的に無効化する方法

標準では無効化できないアプリを、root権限なしで無効化する方法を紹介します。

注意事項

使い方を誤った場合、「起動しない」「ブートループする」といった事態に陥り、端末の初期化が必要になる場合があります。

細心の注意を払ってご利用ください。

無効化するアプリ

普通の方法では無効化することのできないアプリの例として、今回はGalaxyシリーズにプリインストールされている「ブラウザ」アプリを無効化してみたいと思います。

「設定」アプリ -> 「アプリ」

無効化できない

パッケージ名を調べる

まず最初に、無効化したいアプリのパッケージ名を調べます。使用するアプリはこちら。

Aplinを起動して無効化したいアプリを探します。(今回は「ブラウザ」アプリ)

Aplin

今回の場合では、「com.sec.android.app.sbrowser」がパッケージ名となります。

adbコマンドを使えるようにする

adbデバッグをオンにする

「設定」アプリ -> 「端末情報」

「ソフトウェア情報」を開く

「ビルド番号」を7回タップ

「設定」アプリの1番上の階層に戻ると、「開発者向けオプション」の項目が表示されるようになっているので開く

「USBデバッグ」をオンにする

「USBデバッグ」をオンにしたら、PCに接続します。

ドライバを当てる

Galaxyスマートフォンの場合、ドライバは https://developer.samsung.com/galaxy/others/android-usb-driver-for-windows で配布されています。 (日付が2015年なので最新機種で使えるかは不明)

Xperiaの場合、各機種のドライバは https://developer.sony.com/develop/drivers/ で配布されています。「試したけど上手くいかなかった」という方は、Xperia Companionをインストールすれば自動でドライバもインストールされます。 (多分)

adb.exeをダウンロード

まずは以下のページにアクセスします。
https://developer.android.com/studio/releases/platform-tools.html

使用するPCと同じOS用のファイルをダウンロード

ダウンロードしたファイルを展開

出てきた「platform-tools」フォルダを開く

アドレスバーに「cmd」と入力し、Enterキーを押す

黒いウィンドウ (コマンドプロンプト) が出たら「adb devices」と入力し、Enterキーを押す

スマホにこのような画面が表示されたらOKを押す

「List of devices attached」のところに何か表示されていたら準備完了

「List of devices attached」のところに何も表示されない場合

ドライバが上手く当たっていない等、何かしらのミスが発生しています。

以下のサイトが役に立つので、自分で頑張って何とかしてください。

アプリを無効化する

さて、いよいよアプリを無効化します。といっても長い下準備の割にやることはあっけなく、コマンドを1行打つだけです。

使用するコマンドは以下の通りです。

例えば「ブラウザ」アプリの場合であれば、コマンドは以下のようになります。

「adb shell pm disable-user –user 0 com.sec.android.app.sbrowser」と入力し、Enterキーを押す

「new state: disabled-user」と表示されたら成功

作業が終わったら

アプリが消えているか確認

作業が終わったら、アプリがちゃんと無効化されているか確認しましょう。

Before

After

Before

After

USBデバッグをオフにする

アプリ開発をしたり、他にadbコマンドを使う予定がないのであれば、「USBデバッグ」はオフにしておきましょう。

元に戻す方法

無効化したアプリを有効化したい場合、

で有効化できます。

例えば今回の「ブラウザ」アプリでは、

となります。

再起動すると復活してしまうアプリがある場合

基本的には上記の「adb shell pm diable-user」で無効化できるのですが、中には「無効化したはずなのに再起動すると勝手に有効になって復活するアプリ」がある場合があります。

そういった場合には、奥の手として「adb shell pm uninstall」というコマンドを使うことによって「無効化」ではなく「アンインストール」することができます。

使い方は以下の通りです。

「ブラウザ」アプリであれば、コマンドは以下のようになります。

1つ注意点としては「uninstallコマンドはdisable-userと違って簡単には元に戻せない」というものがあります。disable-userはenableコマンドを使えば元に戻りますが、uninstallコマンドはアプリをsideloadで再インストールするか、もしくは端末ごと初期化 (Factory Reset) する以外に元に戻す方法がありません。そのため、基本的にはdisable-userコマンドで無効化し、再起動すると復活する厄介なアプリだけuninstallコマンドを使うことをオススメします。