Bisakah Anda membuat daftar semua direktori yang mungkin di mana aplikasi Android dapat menyimpan data, memberikan deskripsi jenis data apa yang disimpan di setiap direktori?
applications
file-system
storage
mrpyo
sumber
sumber
Jawaban:
Semua aplikasi (root atau tidak) memiliki direktori data default, yaitu
/data/data/<package_name>
. Secara default, database aplikasi, pengaturan, dan semua data lainnya masuk ke sini. Jika aplikasi mengharapkan data dalam jumlah besar untuk disimpan, atau karena alasan lain ingin "bersikap baik pada penyimpanan internal", ada direktori yang sesuai pada SDCard (Android/data/<package_name>
).Terlepas dari itu, semua aplikasi dapat menyimpan data di mana saja di SDCard, karena tidak ada batasan - dan banyak aplikasi melakukannya. Mereka dapat menggunakan nama direktori secara bebas (dan sekali lagi mereka lakukan), yang sering menyulitkan untuk memutuskan untuk apa semua "sampah" pada kartu itu ditujukan, dan untuk apa dapat dihapus.
Meskipun, seperti yang ditunjukkan Tom , aplikasi root dapat menyimpan data mereka hampir di mana saja di perangkat Anda, mereka biasanya mengikuti aturan yang sama dengan aplikasi lain.
Anda dapat menemukan penjelasan umum tentang hierarki direktori Android di jawaban saya di sini . Untuk pertanyaan spesifik Anda, saya dapat menambahkan lebih banyak detail pada
/data/data/<package_name>
(dan bagian-SD yang sesuai):databases/
: inilah database aplikasilib/
: perpustakaan dan pembantu untuk aplikasifiles/
: file terkait lainnyashared_prefs/
: preferensi dan pengaturancache/
: baik, cacheMungkin ada beberapa direktori di tempat ini, atau lebih sedikit - semuanya tergantung pada aplikasi. Dalam "direktori home" -nya sendiri (dan itulah dasarnya, berbicara dengan Linux), mereka dapat menempatkan file di tempat yang mereka inginkan. Biasanya, file dan direktori ini hanya dapat diakses oleh aplikasi itu sendiri (dan root, tentu saja) - selain yang disimpan di SDCard, yang dapat diakses oleh semua aplikasi.
sumber
/data/data/<name>/files/
tempat file yang dibuat seperti yang dijelaskan di developer.android.com/guide/topics/data/… akan menuju? Apakah itu dibuka denganFileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
?/storage/emulated/0/WhatsApp/
(subdirs.Shared
,.trash
,Backups
,Databases
,Media
), termasuk semua media. Saya tidak tahu apakah ini tambahan\data\data...
, saya tidak dapat mengakses direktori ini sekarang. Mungkin ini berubah di antara versi./
) tidak terletak pada kartu SD. Kartu SD berarti di bawah ini/sdcard
(kartu internal, menunjuk ke/storage/emulated/<user>
) atau jalur yang sesuai dari kartu eksternal Anda. Dan tidak, saya tidak bisa menjelaskan semua lokasi yang mungkin beberapa aplikasi mungkin gunakan, maaf; AFAIK/data/misc
dikelola oleh sistem Android itu sendiri, jadi "aplikasi biasa" seharusnya memiliki akses baca di sana. Tidak pernah ditemukandata/user_de
(karena ini adalah jalur relatif, saya tidak tahu maksud Anda).Jawaban atas pertanyaan yang Anda ajukan terlalu besar. Namun, saya bisa memberikan jawaban dasar yang mencakup dasar-dasarnya.
Ada dua jenis aplikasi:
Root dan non-root .
Aplikasi root pada dasarnya dapat menyimpan / memodifikasi file di mana pun mereka inginkan. Aplikasi
non-root hanya dapat menyimpan / memodifikasi file di sini:
/sdcard/
dan setiap folder yang muncul setelahnya.Sebagian besar, aplikasi yang diinstal menyimpan sendiri di
/sdcard/Android/data
atau/sdcard/Android/obb
.Beberapa aplikasi menyimpan permainan / file data konfigurasi mereka pada
/sdcard/APPNAME/
, atau hanya pada/sdcard/
Untuk dapat menggunakan aplikasi root , Anda harus telah melakukan rooting pada perangkat Android Anda dan telah memberikan izin dari salah satu aplikasi superuser.
sumber