Di aplikasi terminal di Android, masukkan (memerlukan akses root):
su
am stop-user USER_ID
Misalnya Untuk pengguna tamu, ini ada USER_ID
di perangkat saya 11
sehingga perintahnya adalah am stop-user 11
.
am stop-user
tidak memproses beberapa input sehingga Anda harus menjalankan perintah untuk setiap pengguna sekunder yang ingin Anda jeda.
Ini agak berbeda dari memulai ulang perangkat. Jika Anda memeriksa am
penggunaan Anda akan melihat,
am stop-user: stop execution of USER_ID, not allowing it to run any code until a later explicit start or switch to it.
Seperti yang dikatakan, itu hanya menjeda semua kegiatan yang terkait dengan akun pengguna itu, jadi setiap kali memulai atau beralih secara eksplisit disediakan sesi Anda akan dilanjutkan daripada mulai dari awal.
Untuk konfirmasi bahwa pengguna memang telah menjeda atau tidak berjalan, lihat jawaban saya untuk Cara mengetahui nama / ID pengguna yang saat ini berjalan dari ADB ?
Secara singkat, pm list users
atau dumpsys activity
akan memberi tahu Anda apakah pengguna RUNNING
atau SHUTDOWN
. Perintah terakhir lebih baik. Jika sesi pengguna memang dihentikan am stop-user
, Anda akan melihat mState=SHUTDOWN
untuk pengguna itu. Namun, jika pengguna belum diaktifkan bahkan sekali sejak reboot, Anda tidak akan melihat entri apa pun.
am stopuser 10
hanya menunjukkanpm list users
perintah sebagai pengguna tidak berjalan. Saya memeriksaadb shell ps
setelaham stop-user 10
dan dapat menemukanu10_axx
proses berjalan. Untuk memeriksa apakah mereka terhenti, saya mencoba menjalankan skrip shell di terminal pada pengguna kedua. Script mengulang pernyataan gema setiap detik (menampilkan detik). Setelah memulai skrip ini, menggunakanam stop-user 10
perintah, menunggu 5 menit dan memulai kembali sesi pengguna ke-2, saya dapat mengatakan bahwa skrip tidak dihentikan. Itu berlari sepanjang waktu.