Какой путь к файловой системе используется Android Context.openFileOutput()?
Я не понимаю, почему ответ на этот вопрос не содержится в документах разработчиков Android; Я нахожу их последовательно разочаровывающими.
Повторить метод openFileOutput() в классе Context, чтобы открыть файл для записи, какой путь к файлу внутреннего хранилища он записывает?
http://developer.android.com/reference/android/content/Context.html
http://developer.android.com/guide/topics/data/data-storage.html#filesInternal
Ответы
Ответ 1
Повторить метод openFileOutput() в классе Context, чтобы открыть файл для записи, какой путь к файлу внутреннего хранилища он записывает?
Указывает, где возвращается getFilesDir()
on Context
. Вы можете сказать это, потому что в документации написано:
Возвращает абсолютный путь к каталогу в файловой системе, где хранятся файлы, созданные с помощью openFileOutput (String, int).
Ответ 2
В DDMS я нашел файл под:
data > data > your app id > files
Ответ 3
Этот файл записывается в путь относительно вашего приложения в памяти устройств.
Возможно, вы можете с ddms
заглянуть в место, но когда вы используете этот Context.openFileOutput(), вам не нужно заботиться о каком-либо абсолютном пути.
Если вы хотите передать имя файла, вы должны использовать внешнее хранилище.
Ответ 4
Вы можете получить этот путь к файлу, вызвав Context#getFileStreamPath(String)
:
Возвращает абсолютный путь в файловой системе, где хранится файл, созданный с помощью openFileOutput(String, int)
.
И затем File#getAbsolutePath()
.