AndroidのシステムアプリをRootなしでアンインストールする方法

  • Rakesh
  • September 11, 2020

Android携帯にはプリインストールアプリが多く、使い物にならないことがあります。 Androidでは通常、システムアプリのフリーズやアンインストールができないため、root権限を取得するか、ADB shell pm uninstallコマンドを活用する必要があります。 root化されたAndroid携帯をお持ちの方は、システムアプリリムーバーを利用してブロートウェアを削除することができます。 普遍的なブロートウェア リムーバーまたはシステム アプリのアンインストーラーがないため、ルート化されていない Android デバイスの ADB 方法が残されています。

私は最近 Samsung ブロートウェアのリストを作成し、プリインストール アプリをアンインストールする最も簡単な方法について説明しました。 このチュートリアルでは、ルート化されていない Android デバイスで、バックグラウンド アプリを無効化またはフリーズし、システム アプリを削除する方法について説明します。 また、ADBコマンドを使用してアンインストールされたアプリを再インストールする方法も紹介します。 あなたの携帯電話がルートアクセスを持っている場合、私はまた、Debloater Magiskモジュールを使用してAndroidデバイスをデブロートする手順をレイアウトします。

このチュートリアルで与えられたヒントは、サムスン、OnePlus、Google Pixel、Xiaomi、Redmi、Huawei、Honor、Nokia、Oppo、Realme、Vivo、Motorola、LenovoなどのすべてのAndroidデバイス上のブロートウェアを取り除くために役立つことができます。 running Android 5.0 or above.

Get Android Bloatware List via ADB

私たちは皆、デバイスのアプリドロワーに表示される名前でアプリを認識しています。 しかし、システムアプリをアンインストールできるようにするには、削除したいアプリのパッケージ名を知っておく必要があります。 Androidアプリのパッケージ名を確認する方法は3つあります。

  1. デスクトップのブラウザーでGoogle Playストアのアプリのページにアクセスします。 パッケージ名は、URLの’id=’のすぐ後にあります。 アプリのパッケージ名は、「com.google.android.gm」のような名前です。
  2. Package Browser、App Inspector、Package Name Viewer などのアプリを試してみてください。
  3. adb shell pm list packages コマンドを使って、Android 電話やタブレットにインストールされているパッケージの完全なリストを取得することも可能です。 ADB コマンドを実行するには、Windows、Mac、または Linux コンピュータ上で ADB と Fastboot をセットアップし、適切な Android USB ドライバーをインストールする必要があることに注意してください。

    Don’t miss: Use ADB Commands on Android Phone without Root

    1. 最新の Android SDK Platform-tools をダウンロードして zip を展開します。
    2. デバイスの設定を開き、開発者オプションからUSBデバッグをオンにします。
    3. 電話設定の「ディスプレイ」に進み、「画面のタイムアウト時間」を増やします。
    4. 次に、USB経由でAndroidデバイスをコンピュータに接続します。
    5. 「platform-toals」フォルダーに移動してコマンドプロンプトまたはPowerShellウィンドウを起動します。 Shift キー + マウスの右クリック ボタンを押して、Windows のコンテキスト メニューでこのオプションを取得できます。
    6. あるいは、File Explorer のアドレス バーに「cmd」と入力して Enter キーを押すと、フォルダー ウィンドウ内からコマンド ウィンドウをすばやく開くことができます。

      Type ‘cmd’ to launch a command prompt

    7. コマンドプロンプトを開いたら、次のコマンドを実行して、コンピュータとADBデーモン間の接続が適切に確立されているかどうかを確認します。
      adb devices
    8. 一方、携帯電話がロックされていないことを表示し、プロンプトが表示されたらデバイスのADBアクセスを承認してください。

      Android

    9. 接続に成功すると、コマンドウィンドウに以下のようにデバイスIDが表示されます。 adb shell と入力し、Enterキーを押します。
      adb shell
    10. リストアップしたいアプリパッケージの種類に応じて、次のコマンドを使用します。 3番目のコマンドを使用すると、「samsung」「google」「xiaomi」「huawei」「android」「amazon」「oppo」「coloros」「evenwell」「Facebook」など、特定のベンダーのアプリを一覧表示します。
      #1 インストールされているすべてのアプリを一覧表示
      pm list packages
      #2 システム アプリのみを一覧表示
      pm list packages -s
      #3 グループごとにアプリを一覧表示
      pm list packages | grep 'samsung'
    11. 以下は、私の Samsung Galaxy S20 Ultra ですべてのシステム アプリのリストを生成した方法です。 黄色で強調表示されている部分には、アプリのパッケージ名が含まれています。

      Samsung bloatware list adb

    12. コマンド ウィンドウの内容を強調表示し、Ctrl + C キーでコピーしてください。 このシステム アプリのリストをテキスト ファイルに保存して、今後使用します。

    アプリの名前とそのパッケージが異なるため、パッケージでアプリを認識することは非常に難しいかもしれません。 さらに、どのアプリを削除しても安全かどうかを判断することも困難です。 Androidデバイスのブロートウェアを安全にアンインストールするためのリストは、Googleで検索することができます。 パッケージによってアプリの実名を取得するもう一つの方法は、Googleの検索ボックスにパッケージ名を貼り付けることです。 そのように、あなたはどんな問題に遭遇せずに削除することができますシステムアプリをショートリストすることができます。

    私は、異なるAndroid OEMからデバイスに存在するブロートウェアのリストを用意しました。

    • Samsung bloatware list
    • Oppo bloatware list
    • Xiaomi bloatware list
    • OnePlus bloatware list
    • Realme bloatware list
    • Nokia bloatware list
    • Vivo pre-bloatware listBloatware listBluetooth bloatware Bloatware list Bluetooth bloatware list
    • Huawei and Honor bloatware list

    Don’t miss: ADB コマンドを使用して Android デバイス名を変更する方法

    Uninstall System Apps without Root

    Androidブロートウェアのリストが準備できたら、ADB uninstall system appコマンドを使用して簡単にそれらを削除することができます。

    1. 上記のように、コマンドプロンプトを起動します。 コマンドウィンドウを開く最も簡単な方法は、File Explorerのアドレスバーに「cmd」と入力し、Enterキーを押すことです。 また、フォルダウィンドウのFile> Open Windows PowerShellオプションをクリックしてもコマンドウィンドウを起動できます。
    2. USBデバッグを有効にして画面のロックを解除した状態でAndroidデバイスをコンピュータに接続し、以下のコマンドを実行します。
      adb shell
    3. これを実行すると、コマンドプロンプトに携帯電話のコード名の後にドル($)記号が表示されたものが返されます。 あなたのAndroid上のシステムアプリをアンインストールするには、これらの2つのコマンドのいずれかを発行する必要があります。
      #1 アプリとそのデータをアンインストールするには
      pm uninstall --user 0 <package name>
      #2 アプリをアンインストールするがそのデータは保持するには
      pm uninstall -k --user 0 <package name>
    4. ここで、あなたが望むコマンドを入力してEnterキーを押してください。 各システム アプリの削除で、「成功」メッセージが表示されます。
    5. このように、好きなだけシステム アプリをアンインストールすることができます。 これは、削除されたアプリは、Android デバイスの他のユーザーにはまだ利用可能であることを意味します。
      cmd package install-existing <package name>

      上記のコマンドを使用する前に、以下のようにadb shellを実行することを忘れないでください。

      app re-installation adb command

      Remove Bloatware on Android (Root)

      ルート化したデバイスを持っている場合、Android用のBloatware Removersがあります。 また、Debloaterと呼ばれるモジュールを使用して、Magiskでルート化されたAndroidデバイス上のブロートウェアを削除することができます。

      1. デバイスに最新のMagisk Managerをインストールして起動します。
      2. ハンバーガー(≡)アイコンをタップしてサイドメニューでダウンロードをタップします。
      3. ここで検索アイコンに “busybox” と入力してダウンロードボタンを押すとAndroid NDK用のBusyboxをインストールできます。 Busybox がインストールされたら、[ダウンロード] に戻ります。

        Magisk ManagerでBusyboxをインストール

      4. ここで「deflater」を検索し、Dloater (Terminal Emulator) Magisk モジュールをインストールします。

        Magisk Debloater module

      5. Debloaterをインストールしたら、Rebootボタンをタップしてください。
      6. Debloater Magiskモジュールには独自のUIがないため、システムアプリのアンインストールコマンドを実行するには、Termuxなどのターミナルエミュレーターアプリをインストールする必要があります。
      7. Termuxを起動し、以下のようにsuコマンドを実行してルート権限を付与します。 その後、Debloater アプリに root 権限を付与するよう促されます。

        Grant root access to Debloater

      8. 次に、次のコマンドで Debloater モジュールを起動します。
        debloat
      9. Debloaterの画面では、5つの選択肢が表示されます。
        1. System Apps
        2. System Priv-Apps
        3. Vendor Apps
        4. Enter Custom System Apps dir
        5. Import Config (/cache/import-debloat.txt)
      10. 我々の目的は Android bloatware を除去することなので、オプション番号1、2、3は選べばよいでしょう。 たとえば、システム アプリをアンインストールするには、「1」と入力して、キーボードの Enter キーをタップします。
      11. Debloater は、Android デバイスのすべてのシステム アプリをスキャンして、完全なリストを提供します。

        Debloater アプリを使って Android をデブラートする

      12. このように、Debloater は私の OnePlus 8 で 100 のシステム アプリのリストを教えてくれました。 仮にScreen Recorder(アプリ番号79)をアンインストールしたい場合は、「79」と入力し、Enterキーをタップしてください。 Debloaterは、複数の番号を入力することで複数のアプリを削除することもできます。

      Freeze Background Apps on Android

      Android はアプリのバックグラウンドプロセスの管理で常に iOS に遅れをとっています。 しかし、Android 8.0 以降では、Google は、バックグラウンドで動作し続け、バッテリー、データ、およびその他のリソースを消耗するアプリをチェックするために多くのことを行っています。 万が一、バックグラウンドのアプリをフリーズさせたい場合は、以下のADBコマンドを使用すれば、root化せずにフリーズさせることができます。 このアプリをフリーズする方法は、Android 7.0+ を実行しているすべてのデバイスで動作するはずです。

      1. コマンドプロンプトを起動します。
      2. USBケーブルでデバイスを接続します。
      3. 次のコマンドを実行します。
        adb shell
      4. 次に、以下のコマンドを実行します。 以下のコマンドの<パッケージ名>をアプリに置き換えることを忘れないでください。
        cmd appops set <package_name> RUN_IN_BACKGROUND ignore

        Freeze background apps using ADB

      5. 凍結したアプリを有効にして再びバックグラウンドで実行できるようにするには、次のコマンドを使用します。
        cmd appops <package_name> RUN_IN_BACKGROUND allow

      Disable System Apps on Android via ADB

      ADB は本当に素晴らしいコマンドライン ツールであり、いくつかの方法で、他の方法では不可能だった Android でのタスクを実行するために使用することができます。 ブロートウェアのアンインストールやシステム アプリのフリーズに加えて、ADB はシステム アプリを簡単に無効化するのにも役立ちます。 次のコマンドを使用すると、Android デバイス上のシステム アプリを無効にできます。

      adb shell pm disable-user --user 0 com.sec.android.app.sbrowser

      無効にしたアプリを後で有効にする場合は、次のコマンドを使用できます。

      adb shell pm enable --user 0 <package name>

      Delete Failed Internal Error in ADB

      ときどき Android OEM が、ADB コマンドを使用して特定のシステム アプリのアンインストールを制限していることがあります。 このような場合、次のエラーが表示されることがあります。

      Failure

      このようなアプリをアンインストールするには、root 権限が必要です。 root化された端末であれば、以下のように次々とコマンドを実行できます。

      adb shell su mount -o rw,remount /system rm -rf /system/app/AntHalService.apk rm -rf /data/data/com.dsi.ant.server mount -o ro,remount /system exit exit

      Androidでシステムアプリを無効化、フリーズ、アンインストールする場合、上記のADBシェルコマンドで全て行うことができます。 System App Remover と Bloatware Remover は、ルート ユーザーにとって最も簡単なツールかもしれませんが、デバイスをルート化していない場合、PC 上の ADB を使用することは、あらゆる Android デバイスのブロートウェアを削除する最良の方法です。 Android

      でセーフモードをオンまたはオフにする方法

コメントを残す

メールアドレスが公開されることはありません。