Bagaimana cara saya menghapus data SharedPreferences untuk aplikasi saya?
Saya membuat aplikasi yang menggunakan banyak layanan web untuk menyinkronkan data. Untuk tujuan pengujian, saya perlu menghapus beberapa nilai SharedPreferences ketika saya me-restart aplikasi.
android
sharedpreferences
Andrew
sumber
sumber
Solusi saya:
sumber
"text"
.Menghapus semua preferensi:
Menghapus preferensi tunggal:
sumber
KeyName
?Jika tidak perlu dihapus setiap kali, Anda dapat menghapusnya secara manual dari:
Versi Android yang lebih baru:
sumber
Menghapus Preferensi Bersama Android dalam satu baris :-)
Atau
apply
untuk operasi asinkron yang tidak memblokir:sumber
Tampaknya semua solusi tidak sepenuhnya berfungsi atau mati
untuk menghapus semua SharedPreferences dalam suatu Kegiatan
Sebut ini dari Kegiatan Utama setelah onCreate
note * i digunakan
.apply()
alih-alih.commit()
, Anda bebas memilih commit ();sumber
Anda dapat menggunakan adb shell untuk melakukan ini bahkan tanpa ponsel yang di-rooting. Satu-satunya tangkapan adalah aplikasi tersebut harus dapat debuggable.
Sebagai contoh:
Atau, Anda bisa melakukan hal di atas tetapi tanpa perintah yang akan mengarahkan Anda ke root paket aplikasi dan memungkinkan Anda untuk mengeksekusi lebih banyak perintah dalam konteks aplikasi.
sumber
run-as
. Anda akan berpikir saya akan menemukan ini setelah 3 tahun ...sumber
Pada API 24 (Nougat) Anda bisa melakukan:
Namun, tidak ada kompatibilitas ke belakang, jadi jika Anda mendukung sesuatu yang kurang dari 24, tetap dengan:
sumber
Bersihkan semuanya:
sumber
Anda juga dapat menghapus aplikasi secara manual menggunakan perangkat Anda. Kemudian ketika Anda menginstal ulang aplikasi Anda, preferensi bersama telah diatur ulang.
sumber
Dalam definisi kelas:
Di dalam kelas:
sumber
Coba kode ini:
sumber
Jika ini untuk pengujian Anda. Anda dapat menggunakan perintah adb.
sumber
Ini akan menghapus preferensi bersama yang disimpan dengan nama "someTag".
sumber
SharedPreferences.Editor menghapus (String string) diikuti oleh commit () atau apply ()
Untuk menghapus semua nilai,
SharedPreferences.Editor menghapus () diikuti oleh commit () atau apply ()
sumber
Untuk menghapus pasangan nilai kunci dari preferensi, Anda dapat dengan mudah melakukan hal berikut
Saya juga telah mengembangkan perpustakaan untuk memudahkan manipulasi preferensi bersama. Anda dapat menemukan tautan berikut
https://github.com/farruhha/SimplePrefs
sumber
Untuk menghapus semua SharedPreferences secara terpusat dari kelas mana pun:
Dan dari kelas mana pun: (komit mengembalikan Boolean tempat Anda dapat memeriksa apakah Preferensi Anda dihapus atau tidak)
Atau Anda bisa menggunakan berlaku; mengembalikan batal
sumber
Saya dapat menghapus file dalam preferensi bersama dengannya
sumber
Tidak ada jawaban yang berfungsi untuk saya karena saya memiliki banyak tombol preferensi bersama.
Katakanlah Anda menjalankan Tes Android daripada tes unit.
Ini berfungsi untuk saya loop dan menghapus semua file shared_prefs .
sumber
Cara Kotlin ktx untuk menghapus semua preferensi:
Klik di sini untuk semua operasi preferensi Bersama dengan contoh
sumber
Anda dapat menggunakan
preferences.edit().remove("key").commit()
untuk menghapus nilai yang disimpan dari preferensi bersama.sumber
Lakukan saja pagi ini. Dari prompt perintah:
CATATAN : Ini membutuhkan perangkat yang di-rooting seperti stok perangkat virtual Android, perangkat Genymotion, atau handset / tablet yang sudah di-root, dll.
sumber
/data/data
secara langsung!su
setelahadb shell
membuka shell istimewa.