標準では無効化できないアプリを、root権限なしで無効化する方法を紹介します。
注意事項
使い方を誤った場合、「起動しない」「ブートループする」といった事態に陥り、端末の初期化が必要になる場合があります。
細心の注意を払ってご利用ください。
無効化するアプリ
普通の方法では無効化することのできないアプリの例として、今回はGalaxyシリーズにプリインストールされている「ブラウザ」アプリを無効化してみたいと思います。
パッケージ名を調べる
まず最初に、無効化したいアプリのパッケージ名を調べます。使用するアプリはこちら。
Aplinを起動して無効化したいアプリを探します。(今回は「ブラウザ」アプリ)
今回の場合では、「com.sec.android.app.sbrowser」がパッケージ名となります。
adbコマンドを使えるようにする
adbデバッグをオンにする
「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
「List of devices attached」のところに何も表示されない場合
ドライバが上手く当たっていない等、何かしらのミスが発生しています。
以下のサイトが役に立つので、自分で頑張って何とかしてください。
アプリを無効化する
さて、いよいよアプリを無効化します。といっても長い下準備の割にやることはあっけなく、コマンドを1行打つだけです。
使用するコマンドは以下の通りです。
例えば「ブラウザ」アプリの場合であれば、コマンドは以下のようになります。
作業が終わったら
アプリが消えているか確認
作業が終わったら、アプリがちゃんと無効化されているか確認しましょう。
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コマンドを使うことをオススメします。