Jawaban:
Iya. Perintahnya adalah pm disable <package name>
. Anda harus menjadi root untuk melakukan ini:
Buka shell dan dapatkan root:
PC> adb shell
shell@hammerhead:/ $ su
Daftar semua aplikasi yang diaktifkan, filter dengan "kalkulator":
root@hammerhead:/ # pm list packages -e | grep 'calculator'
package:com.android.calculator2
Nonaktifkan aplikasi:
root@hammerhead:/ # pm disable com.android.calculator2
Package com.android.calculator2 new state: disabled
Daftar semua aplikasi yang dinonaktifkan:
root@hammerhead:/ # pm list packages -d
package:com.android.calculator2
package:com.google.android.apps.inputmethod.hindi
package:jp.co.omronsoft.iwnnime.ml
package:com.google.android.inputmethod.pinyin
package:com.google.android.inputmethod.korean
package:com.google.earth
root@hammerhead:/ #
Beberapa hal lain yang perlu diperhatikan:
pm enable <package name>
. Sebenarnya, ini sepertinya satu - satunya cara untuk mengaktifkannya kembali, menurut pengalaman saya.Manifest
atau sejenisnya (Saya bukan Android dev, jadi saya tidak tahu).
Lebih jauh ke jawaban oleh @eldarerathis, Anda dapat menonaktifkan aplikasi untuk pengguna tertentu. Saya menggunakan metode ini untuk menghapus beberapa aplikasi dari pengguna terbatas yang tidak terdaftar di layar pengaturan pengguna. Semua perintah dari adb shell
. Akses root diperlukan untuk membuat perubahan.
Pertama, dapatkan id pengguna:
$ pm list users
Users:
UserInfo{0:Alice:13} running
UserInfo{11:Bob:18} running
Kemudian
$ pm disable --user 11 com.cyanogenmod.filemanager
Package com.cyanogenmod.filemanager new state: disabled-user
Untuk mengaktifkan kembali
# pm enable --user 11 com.cyanogenmod.filemanager
Dalam contoh ini, Alice dapat menggunakan manajer file tetapi Bob tidak bisa.
Anda dapat melakukan hal serupa dengan hide
alih - alih disable
. Saya tidak yakin mana yang terbaik, tetapi lihat jawaban ini . Kebalikannya hide
adalah unhide
(reboot mungkin diperlukan untuk memberi efek unhide
).
Anda dapat mendaftar paket dengan pm list pacakges --user 11
. Berikan -e
ke daftar paket yang diaktifkan atau -d
jika Anda ingin melihat yang dinonaktifkan. Tampaknya tidak ada filter untuk paket tersembunyi.
FWIW, saya mencoba yang di atas pada Lollipop dengan CM 12.1 di Amazon Fire (KFFOWI).
Ini harus bekerja terlepas dari apakah aplikasi tersebut adalah aplikasi sistem atau aplikasi pihak ketiga (pengguna terpasang).
Lihat jawaban saya di Tentukan nama paket aplikasi Anda untuk mendapatkan nama paket aplikasi terkait dan gunakan adb shell untuk menjalankan perintah ini ( memerlukan akses root ):
adb shell su pm nonaktifkan PACKAGE # menonaktifkan aplikasi dan menyembunyikannya di Pengaturan -> Aplikasi sembunyikan PAKET # alternatif; untuk Android Lollipop dan di atasnya paket cmd menangguhkan PAKET # alternatif; paket tetap terlihat di aplikasi Peluncur dan Pengaturan tetapi tidak dapat digunakan; fitur Administrasi Perangkat
PACKAGE
mengacu pada nama paket aplikasi
Untuk mengembalikan aplikasi, ganti disable dengan memungkinkan , hide dengan unhide , dan menangguhkan dengan unsuspend di perintah kata dan jalankan dengan hak istimewa root.
Jika Anda memiliki Android KitKat atau lebih dan tidak memiliki akses root , gunakan adb di PC untuk menjalankan perintah ini:
adb shell pm blok PACKAGE # untuk Android KitKat adb shell pm sembunyikan PAKET # hanya untuk Android Lollipop adb shell pm nonaktifkan-pengguna PAKET # alternatif untuk `pm hide`; untuk Android Lollipop ke atas; ini berfungsi seperti menonaktifkan aplikasi melalui Pengaturan aplikasi
Untuk mengembalikan aplikasi:
adb shell pm unblock PACKAGE # untuk Android KitKat adb shell pm unhide PACKAGE # untuk Android Lollipop dan hanya jika Anda menggunakan `pm hide` sebelumnya adb shell pm aktifkan PACKAGE # untuk Android Lollipop dan yang lebih tinggi
Perubahan akan segera terjadi.