シェルからアプリケーションをアンインストールしようとしていますが、このアプリケーションはデバイス管理者として実行されているため、機能shell> adb uninstall com.example.test
しませんでした。
シェルからデバイス管理者を無効にするにはどうすればよいですか?
シェルからアプリケーションをアンインストールしようとしていますが、このアプリケーションはデバイス管理者として実行されているため、機能shell> adb uninstall com.example.test
しませんでした。
シェルからデバイス管理者を無効にするにはどうすればよいですか?
通常、管理アクセスはデバイス管理者画面から取り消され、アプリはアンインストールされます。以降の例では、airdroid ( com.sand.airdroid
) がデバイス管理者として構成されており、アンインストールされるものとします。したがって、この例を調整するには、 のインスタンスをcom.sand.airdroid
独自のアプリ名に置き換えます。
デバイス管理者にアクセスするには、設定→セキュリティ→デバイス管理者に移動します。次に、管理アクセスの設定を解除するアプリケーションのチェックを外します。
シェルを使用してこのアクティビティを開くこともできます。
adb shell am start -S "com.android.settings/.Settings\$DeviceAdminSettingsActivity"
これが完了すると、アクティビティは通常どおりアンインストールできます。
adb uninstall com.sand.airdroid
力ずくの方法は存在します。これには、/system および /data ファイルシステム内のすべてのファイルの検索と、見つかった各アイテムの削除が含まれます。免責事項: 注意して使用してください (最初にエミュレーターでテストしてください)。
adb shell
# Switch to root
su -
# Search for all installed files using the fully-qualified app name
find /system /data -name \*com.sand.airdroid\*
...ファイル (ディレクトリを含む) のリストが表示されます -- 各ファイルについて、次のプレフィックスを付けて削除しますrm -f
:
rm -r /data/media/0/Android/data/com.sand.airdroid
rm -r /data/data/com.sand.airdroid
rm -r /data/app-lib/com.sand.airdroid-1
rm -r /data/app/com.sand.airdroid-1.apk
rm -r /data/dalvik-cache/data@app@com.sand.airdroid-1.apk@classes.dex
# Run the find command again to ensure nothing was missed
find /system /data -name \*com.sand.airdroid\*
# exit root
exit
# exit Android shell
exit
Android がファイルをクリーンアップできるようにするには、デバイスを再起動します。
adb reboot
uninstall
デバイスが再起動したら、クリーンアップを完了するコマンドを使用してアプリケーションをアンインストールできます。
adb uninstall com.sand.airdroid