2013-07-26 2 views
0

Можно ли изменить разрешения для файлов, сохраненных в общей папке загрузки? (т. е. когда браузер отправляет загрузки.) Я попытался использовать файловые методы setReadable и setWritable, чтобы файлы, которые я загрузил, были просмотрены, но метод возвращает false. Я предполагаю, что это потому, что у меня нет доступа root.Изменение разрешений файла в папке загрузки

Если пользователь использует проводник файлов непосредственно на телефоне, они могут видеть файлы, но если они подключают свой телефон к компьютеру, файлы не видны.

Заранее спасибо.

+0

«Общая папка для загрузки» («Загрузки» на внешнем хранилище по умолчанию) - это чтение/запись для пользователей, если ваше устройство не разбито. – CommonsWare

+0

@CommonsWare Это то, что я думал изначально, поэтому, когда я впервые написал код, я не стал устанавливать разрешения. Но по какой-то причине я могу видеть только файлы, если я использую проводник файлов непосредственно на телефоне. Из любопытства я сохранил загруженный файл в папке Android, и я действительно мог его увидеть из обозревателя компьютерных файлов. – Pinsickle

ответ

1

Я попытался использовать методы файлов setReadable и setWritable, чтобы файлы, которые я загрузил, были просмотрены, но метод возвращает false.

Возможно, вы не указали их с помощью MediaScannerConnection, или, возможно, ваш компьютер кэширует результаты подключения MTP к устройству.

+0

Большое спасибо, это была моя точная проблема. Я не знал о регистрации в «MediaScannerConnection» – Pinsickle

+0

@Pinsickle: Да, вам не нужно было делать это с Android 1.x/2.x, но вы делаете с Android 3.0+. Больше истории на http://commonsware.com/blog/2011/08/31/mtp-external-storage.html – CommonsWare

1

Некоторые файловые системы, включая SD-карты, не позволяют изменять разрешения. Вероятно, общая папка с загрузкой находится на одном из них.

Попробуйте изменить подключение USB-компьютера к массовому хранилищу, что должно устранить проблему.

Смежные вопросы