По сути, ни один из ваших файлов не дублируется, потому что и /sdcard/Download , и /storage/emulated/0/Download указывают на одно и то же место. /0/ здесь для многопользовательской функции, представленной в JB, и относится к основному пользователю.
Что за папка Storage Emulated?
Это внешнее хранилище, куда сохраняются пользовательские данные, найти которые на телефоне несложно. Папка Storage будет располагаться в Android/data, а в данном каталоге многочисленные подпапки с именами приложений (расположение внешней памяти определяет ОС, но не пользователь).
Где найти папку Android data?
В ряде менеджеров для быстрого доступа к оному есть отдельный пункт в Action Bar, а где-то нужно просто нажать на знак «..» или выбрать «Корень файловой системы». Именно тут на Android и можно обнаружить папки data и system, имена их, кстати, тоже начинаются с косой черты.
Что хранится в папке Data?
data – Папка data сохраняет информацию пользователя, от контактов и сообщений до приложений и музыки, и вот к этому разделу вы имеете доступ через файловый браузер. После сброса до заводских настроек этот раздел стирается. cache – Android хранит здесь часто используемые данные и компоненты приложений.
Невозможно открыть файл на Android — Причина и Исправление
Что можно удалить из папки Android?
Без вреда для работы операционной системы можно удалить или переместить файлы, которые находятся в таких каталогах: Download, Bluetooth, Media, DCIM, Video, Music, Sounds, Movies. Кроме этого можно проверить и папки, которые были созданы установленными приложениями.
Что означает слово permission?
Permission Control — это специальная служба Андроид которая следит за разрешениями выданными различным приложениям. Основной задачей данного компонента является недопустимость получения другими приложениями различного доступа, который не был заявлен при установке.
Как найти папку с программой на андроид?
Где хранятся приложения на Android
Если ранее вы скачивали игры или программы из сервиса Google Play и устанавливали их на телефон, то найти соответствующие папки можно в разделе /data/app. Оттуда их можно свободно извлечь. Если вас интересуют системные приложения, то они находятся в другом разделе — /system/app.
Как очистить память на Андроиде?
- Открыть настройки устройства
- Найти раздел «Приложения»
- В открывшемся окне просмотреть информацию о сторонних и системных приложениях. .
- Поочередно открыть каждую из программ и нажать в открывшемся окне сначала «Стереть все данные», а затем «Очистить кэш»:
Можно ли удалить папку data?
Удалить эту папку можно, а в некоторых случаях даже нужно. Data – один из крупнейших каталогов, который, как можно догадаться по названию, содержит разнообразные данные. Сюда входят данные аккаунтов, информация о сохраненных паролях, точках доступа Wi-Fi и т.
Где находится папка дата?
Нажмите «Пуск», а затем зайдите в раздел пользователя. Там вы найдете папку «AppData» с подпапками «Local», «LocalLow» и «Roaming». Быстро открыть AppData можно с помощью комбинации [Windows] + [R], набрав %appdata% в окне «Выполнить».
Источник: dmcagency.ru
Android — невозможно открыть контент: файл:///storage/emulated/0
У меня есть виджет с фоном с девятью патчами. Изображение было сохранено в /sdcard/mydir/bgs.
Когда я пытаюсь загрузить изображение с помощью метода setImageViewUri, у меня есть эта ошибка:
Unable to open content: file:///storage/emulated/0/sdcard/mydir/bgs
open failed: EACCES (Permission denied)
Это отображается только на главном экране и только с Nexus 10 и Nexus 7 (с последней версией 4.4 этой ошибки не существует). У меня также есть RemoteView в моем приложении, и все работает правильно.
Я также добавил в манифест либо READ_EXTERNAL_STORAGE, либо WRITE_EXTERNAL_STORAGE.
Как я могу решить?
UPDATE: я проверяю метод setImageViewUri, и я обнаружил, что он меняет путь к моему файлу.
if (value != null) < // Resolve any filesystem path before sending remotely value = value.getCanonicalUri(); if (StrictMode.vmFileUriExposureEnabled()) < value.checkFileUriExposed(«RemoteViews.setUri()»); >>
Этот метод получает мое значение (/sdcard/mydir/bgs) и изменяет его на (storage/emulated/0/sdcard/mydir/bgs). Но этот файл не существует в системе через adb.
ОТВЕТЫ
Ответ 1
Похоже, что setImageViewUri больше не безопасно использовать с файлом://uris.
Почему?
Jellybean представила разрешение READ_EXTERNAL_STORAGE . Приложения, которые хотят читать из внешнего хранилища, должны иметь это разрешение. Это не было применено по умолчанию до KitKat.
Пусковая установка не поддерживает это разрешение. На самом деле вам не гарантируется, что любой RemoteView, который вы прикрепляете, содержит это разрешение. Это делает небезопасным использование setImageViewUri, так как вы не знаете, сможет ли удаленный просмотр изображения даже прочитать данный uri.
Что теперь?
Вариант 1: используйте setImageViewBitmap.
Возможно, вы отказались от этой опции из-за неудачных транзакций связующего. Трюк для них — это просто убедиться, что ваше изображение меньше 1 МБ. Это не так сложно, как кажется. Вы можете точно рассчитать, насколько велика ваша картинка. Например, если вы используете изображение ARGB_8888, это означает, что вам нужно 4 байта на пиксель. Мы можем вычислить максимальный размер:
1 Mb = 1048576 bytes = 262144 pixels = 512 x 512 image
Конечно, вы можете выжать больше из него, используя RGB_565, чтобы получить 2x пикселей.
Также обратите внимание, что вам может не понадобиться огромное изображение, если ваш виджет невелик. Ваш appwidget может задать свои конкретные параметры следующим образом:
Bundle options = appWidgetManager.getAppWidgetOptions(appWidgetIds[i]); int minWidth = options.getInt(AppWidgetManager.OPTION_APPWIDGET_MIN_WIDTH); int minHeight = options.getInt(AppWidgetManager.OPTION_APPWIDGET_MIN_HEIGHT); int maxWidth = options.getInt(AppWidgetManager.OPTION_APPWIDGET_MAX_WIDTH); int maxHeight = options.getInt(AppWidgetManager.OPTION_APPWIDGET_MAX_HEIGHT);
Просто имейте в виду, что возвращаемые значения находятся в dip-пикселях, поэтому вам нужно будет их преобразовать, чтобы масштабировать растровое изображение.
Вариант 2. Использование поставщика контента
Если по какой-то причине вам все еще не нравится ограничение IPC, вы всегда можете создать пользовательский контент-провайдер. Передайте этот uri в setImageViewUri, и вам должно быть хорошо идти.
Как насчет переключателя пути?
Переключатель пути не является реальной проблемой. Похоже, что это проблема, но эмуляция работает нормально. Попробуйте создать файл внутри //storage/emulated/0/sdcard/mydir/bgs , и файл будет создан просто отлично.
Вы заметите, что в то время как исключением является исключение FileNotFoundException, это сообщение разрешено.
Ответ 2
Как и в случае с Lollipop, Google представил новый способ явно предоставить приложениям разрешение, которое вы хотите использовать на своем устройстве, и отключить те, которые вы хотите отклонить. Если вы заметили, в вашем мониторе Android журнал показывает
java.io.FileNotFoundException: /storage/emulated/0/advert.mp4: open failed: EACCES (Permission denied)
EACCESS permission denied является причиной java пресловутой FileNotFoundException .
Чтобы решить эту проблему, просто перейдите на свое приложение и включите хранилище для своего приложения.
Ответ 3
в вашем манифесте.
Ответ 4
Я думаю, что вы вводите путь к SD-карте вручную. Вместо того, чтобы вручную вводить путь к SD-карте, вы должны получить путь к хранилищу следующим образом:
File extStore = Environment.getExternalStorageDirectory(); String mPath = extStore.getAbsolutePath() + «/mydir/bgs»;
Источник: utyatnishna.ru
На телефоне Honor, Huawei не скачиваются приложения, документы, фото, музыка или видео
Современные мобильные телефоны давно перестали быть просто «звонилками». Сегодня это достаточно мощная система, позволяющая пользователю делать самые разные операции. И часть из них подразумевают возможность скачивания или сохранения определенных компонентов. Поэтому, если на телефоне Honor, Huawei не скачиваются приложения, документы, фото или видео, музыка, то это проблема – ведь функционал устройства сразу же становится ограниченным.
Что делать в подобной ситуации?
Решение зависит от того, в каких случаях проявляется эта проблема. Например, есть универсальная методика, когда после обновления телефона вообще ничего невозможно записать или сохранить. И отдельный вариант, есть сложности возникают при использовании определенных приложений.
Универсальное решение
Итак, если у вас смартфон Honor, Huawei или другое устройство на базе Android, которое не хочет что-то сохранять после очередного обновления, хотя свободного места в памяти достаточно, то предлагается два варианта исправления:
Откат всех установленных параметров
Делается это просто:
- Необходимо на экране мобильника нажать на иконку, отвечающую за настройки устройства;
- Найти и перейти в раздел «Система»;
- Дальше кликнуть по подразделу «Сброс» и воспользоваться инструментом «Сброс всех настроек».
Для проверки результата понадобится обязательная перезагрузка телефона.
Если не помогло, переходим ко второму варианту.
Возврат настроек до заводского состояния
Перед началом этой процедуры обязательно необходимо сохранить где-то еще все личные данные, которые не хочется потерять. Откат до заводских настроек автоматически сотрет все то, что владелец мобильника когда-либо заносил в память.
Когда все будет сохранено, то можно перейти к самой процедуре:
- Просто отключаем телефон.
- Одновременно зажимаем на его корпусе кнопки включения и повышения звука;
- Держим их до момента, пока на экране не высветится так называемое Рековери-меню;
- Используя кнопки повышения/понижения громкости, переходим к «wipe data/factory reset»;
- Активируем этот функционал кнопкой включения;
- Ждем завершения процедуры отката, с помощью тех же кнопок активируем функцию «reboot system now».
Теперь можно проверять результат.
Проблема при использовании определенного приложения
Этот вариант подойдет, если что-то не сохраняется при пользовании каким-то определенным ПО. Например, не записываются голосовые сообщения в ВКонтакте. Поступаем следующим образом:
- Выполняем обновление ПО до актуальной версии. Сделать это можно в настройках самого приложения или через Плэй Маркет;
- Проверяем результат. Если он отрицательный, то заходим в настройки мобильного;
- Дважды переходим в «Приложения»;
- Находим там «ВКонтакте»;
- Делаем переход в подраздел «Память»;
- Используем инструмент сброса.
Перезагружаем устройство, чтобы удостовериться в результате.
Аналогичным способом можно сделать сброс Плей Маркета.
Если же аналогичная ситуация возникает при использовании какого-то системного ПО, то оно также сбрасывается. Правда, изначально нужно получить к нему доступ:
- Через настройки опять дважды переходим в «Приложения»;
- Активируем в верхней части экрана допменю;
- В нем выбираем «Показать системные»;
- В списке находим нужное нам ПО, опять переходим в подраздел «Память» и нажимаем на уже знакомую нам функцию сброса.
После перезапуска мобильника оцениваем результат. Если его нет, то используем уже описанный выше метод по откату параметров смартфона до заводского состояния.
Источник: help-virtual.ru