Numéro de série | api | chemin |
---|---|---|
1 | Environment.getDataDirectory (). GetAbsolutePath () | /Les données |
2 | Environment.getDownloadCacheDirectory (). GetAbsolutePath () | / data / cache |
3 | getPackageCodePath () | /data/app/com.example.t001-L3Hbdf4sz06WYM_KKyyKWg==/base.apk |
4 | getPackageResourcePath () | /data/app/com.example.t001-L3Hbdf4sz06WYM_KKyyKWg==/base.apk |
5 | getCacheDir (). getAbsolutePath () | /data/user/0/com.example.t001/cache |
6 | getFilesDir (). getAbsolutePath () | /data/user/0/com.example.t001/files |
7 | getDatabasePath (Environment.DIRECTORY_DOCUMENTS) .getAbsolutePath () | /data/user/0/com.example.t001/databases/Documents |
8 | Environment.getExternalStorageDirectory (). GetAbsolutePath () | / stockage / émulé / 0 |
9 | Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_DOCUMENTS) .getAbsolutePath () | / stockage / émulé / 0 / Documents |
dix | getExternalCacheDir (). getAbsolutePath () | /storage/emulated/0/Android/data/com.example.t001/cache |
11 | getExternalFilesDir ("test"). getAbsolutePath () | /storage/emulated/0/Android/data/com.example.t001/files/test |
/ data / user / 0 pointe vers data / data, data / user / 0 est un raccourci vers data / data;
après la désinstallation de l'application (com.example.t001), data / data / com.example.t001 (dans le fichier interne stockage Le répertoire de stockage d'une application) et /storage/emulated/0/Android/data/com.example.t001 (le répertoire de stockage d'une application dans le stockage externe) seront automatiquement supprimés;
Code
Log.d(TAG, "01-" + Environment.getDataDirectory().getAbsolutePath());
Log.d(TAG, "02-" + Environment.getDownloadCacheDirectory().getAbsolutePath());
Log.d(TAG, "------------------------------------------------------------------");
Log.d(TAG, "03-" + getPackageCodePath());
Log.d(TAG, "04-" + getPackageResourcePath());
Log.d(TAG, "------------------------------------------------------------------");
Log.d(TAG, "--------------/data/user/0 -指向> data/data-----------------");
Log.d(TAG, "05-" + getCacheDir().getAbsolutePath()); ///data/user/0/com.example.t001/cache
Log.d(TAG, "06-" + getFilesDir().getAbsolutePath()); ///data/user/0/com.example.t001/files
Log.d(TAG, "07-" + getDatabasePath(Environment.DIRECTORY_DOCUMENTS).getAbsolutePath());///data/user/0/com.example.t001/databases/Documents
Log.d(TAG, "------------------------------------------------------------------");
Log.d(TAG, "08-" + Environment.getExternalStorageDirectory().getAbsolutePath());
Log.d(TAG, "09-" + Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS).getAbsolutePath());
Log.d(TAG, "10-" + getExternalCacheDir().getAbsolutePath());
Log.d(TAG, "11-" + getExternalFilesDir(Environment.DIRECTORY_PICTURES).getAbsolutePath());
De plus,
sdcard pointe vers / storage / self / primary; sdcard est équivalent au raccourci de
/ storage / self / primary, le principal dans / mnt / user / 0 / primary,
donc sdcard -> / storage / self / primary- > / mnt / user / 0 / primary équivaut au même répertoire;
Test du système de téléphonie mobile (machine personnalisée portable): 8.1.0, différents périphériques / stockage / auto / principal pointent un peu différemment, certaines machines (Redmi k30) pointent vers / stockage / émulé / 0 (ici parce que l'appareil n'est pas rooté , / storage / je ne vois pas émulé / 0, je suppose qu'il pourrait également pointer vers / mnt / user / 0 / primary)
Seulement cet enregistrement pour une référence facile