Обновление на Android Lollipop и особенности работы с внешней картой памяти. Android как снять защиту записи с SD-карты Как снять защиту записи с SD-карты Android

Свершилось! На планшет, а именно, на Asus MeMO Pad 7, который я на замену своему честному трудяге, прилетело обновление до Android 5.0.1. Теперь у меня есть устройство с Леденцом, или, как пишут в интернете, с Лолипопой.

Обнова прилетела несколько неожиданно. Если честно, я ждал в апреле новую прошивку на телефон (Asus ZenFone 5) - ее, по крайней мере, обещали. Про планшет же никто ничего не говорил и тут - на тебе, получите и распишитесь.

Это, на самом деле, обескуражило меня (в хорошем, конечно, смысле), еще и потому, что планшет я приобрел в декабре, и на нем стояла версия 4.3. То есть, это второй существенный апдейт операционной системы (на самом деле, обнов было больше, но номер версии Android не менялся). Предыдущий производитель моих устройств - Samsung - не мог похвастаться такой скорострельностью, хотя, тоже дважды обновлял операционку: с Android 3.2 до Android 4.1.2 (через 4.0.1). Только вот ждать этих новых версий приходилось значительно дольше.

Что ж, да здравствуют сюрпризы! Получив уведомление о выходе новой версии прошивки, я тут же скачал ее, а это больше 700 метров, и запустил обновление. Так как качал я не через , а через мобильную, то времени на все про все потребовалось чуть больше: от начала загрузки до завершения обновления прошло около часа. Само обновление длилось где-то минут двадцать, но, потенциально, может занимать и больше времени - потому, что после установки операционки следует процесс обновления установленных программ. У меня счетчик досчитал до 205. Но вот, процесс завершился и настало время посмотреть, что же изменилось.

Первое, что бросилось в глаза - более утонченная графика при разблокировке устройства. Второе - рука в области уведомлений. Пару дней я ее терпел, надеясь на то, что случайно где-нибудь увижу что-нибудь, связанное с ней. Не увидел. Тогда стал искать целенаправленно и нашел разъяснение по ней на 4pda . Оказывается, оповещения поделили на важные и не очень, и есть возможность указать, какие оповещения вы хотите получать. Если выставить опцию Оповещать всегда , то рука пропадает, если опцию Только важные оповещения , то рука появляется. Если честно, руку я убирал несколько раз, но, почему-то, она стабильно возвращается. Почему? Пока не знаю.

Вот, собственно, сама процедура по "убиранию" этой руки:

Метод, приведенный выше, совершенно не сложен. Но можно добиться результата еще быстрее и проще: нажать на какую-то из двух кнопок управления громкостью - на экране появится окошко, позволяющее изменять уровни громкости для различных компонентов системы, а также, внимание, управлять Режимами оповещения . Правда, почему-то, эти самые Режимы оповещения выводятся в таком быстром варианте не всегда. Закономерности я пока не нашел, но, если честно, не больно-то и искал.

Выбираем внешнюю карту памяти
и в меню выбираем нужный пункт
Вот теперь, пожалуй, все.

Многие счастливые обладатели устройств с 4.4.2 «на борту» уже наверняка столкнулись с проблемой невозможности записи данных на флешкарту большинством приложений, установленных на девайсе. Сделано, по уверениям компании Google для того, чтобы сделать ОС Android 4.4.2 KitKat более защищённой системой.

Ограничения записи на флешкарту касаются прежде всего приложений, установленных из сторонних источников. И, самое главное, в Android 4.4.2 KitKat запрещается модификация файлов, которые напрямую не относятся к приложениям, которые хотят сделать эту модификацию. Отсюда и невозможность записи на SD-карту.

На практике сие ограничение означает буквально следующее: пользуйтесь стандартными мессенджерами, фоторедакторами, файловыми менеджерами ! Потому как если разработчик вашего ПО не смог вовремя отреагировать и добавить обновление к вашему фоторедактору, к примеру, то все ваши отредактированные фотки будут «живы» пока работает фоторедактор – записать-то на карту ваши отредактированные фотки у вас уже не получится!

Более продвинутые пользователи, постоянно копирующие данные с флешки на компьютер и назад, могут столкнуться с такой проблемой: компьютер определять определяет вашу « », видит файлы, но вот что-либо сделать с ними уже не может – отказ в доступе! Эту проблему можно поправить, установив на свой девайс приложение, которое даст доступ к. Но работать это приложение будет только на ROOT-ированных устройствах.

Работает SDFix: KitKat Writable просто: после установки и запуска приложения, вы нажимаете на Продолжить («Continue»), соглашаетесь с условиями и снова нажимаете на Продолжить («Continue»). Если на вашем устройстве уже установлено приложение Superuser, то вам следует разрешить в нём доступ SDFix к ROOT-директориям.


SDFix KitKat Writable MicroSD в процессе своей работы изменит файл /system/etc/permissions/platform.xml, в котором пропишет разрешение для записи и модификации файлов приложениями, которые обладают разрешением WRITE_EXTERNAL_STORAGE. Оригинал изменённого SDFix: KitKat Writable MicroSD файла вы сможете найти по имени platform.xml.original-pre-sdfix. Впоследствии вы всегда сможете восстановить оригинальный файл.

Для самых «рукастых» пользователей, обладающих ROOT-доступом на своём устройстве, есть вариант внести исправления в нужный файл , не прибегая к помощи SDFix: KitKat Writable MicroSD.

Для этого запустите файл-менеджер, который может редактировать файлы, находите файл platform.xml по адресу /system/etc/permissions/, и открываете его при помощи встроенного редактора.


После этого находите секции android.permission.WRITE_MEDIA_STORAGE и android.permission.WRITE_EXTERNAL_STORAGE и добавляете в этих секциях строчки с кодом:

После этого в редакторе сохраните изменённый файл.

После перезагрузки устройства все неприятные проблемы, связанные с невозможностью записи и модификации файлов на флеш-карте будут решены.

Разрабатывая приложение для проведения соревнований, я столкнулся с проблемой хранения базы данных. Проблема состояла в том, как мне определить внешнюю карту памяти. В целом поиск в сети точного ответа не дал. Поэтому, объединив все найденные результаты, я собрал свой класс. Если кому интересно, смотрим под катом.

Итак, начнем с теории.

Терминология

Гугл нам говорит, что есть следующие понятия:
  1. Внутренняя (internal ) память - это часть встроенной в телефон карты памяти. При ее использовании по умолчанию папка приложения защищена от доступа других приложений (Using the Internal Storage).
  2. Внешняя (external ) память - это общее «внешнее хранилище», т.е. это может быть как часть встроенной памяти, так и удаляемое устройство. Обычно это часть встроенной памяти, как удаляемое устройство я видел в последний раз на андройде 2.2, где встроенная память была около 2Гб, и подключаемая память становилась внешней (Using the External Storage).
  3. Удаляемая (removable ) память - все хранилища, которые могут быть удалены из устройства без «хирургических» вмешательств.

До версии KitKat 4.4 API не предоставляло функционала для получения путей к внешней памяти. Начиная с этой версии (API 19) появилась функция public abstract File getExternalFilesDirs (String type), которая возвращает массив строк с путями к внутренней и внешней памяти. Но как же быть с нашей SD Card, которая вставлена в слот? Путь к ней мы опять не можем получить.

Результаты поиска

Чтобы ответить на поставленный вопрос я обратился к всезнающему гуглу. Но и он мне не дал четкого ответа. Было рассмотрено множество вариантов определения от использования стандартных функций, которые ведут к внешней памяти, но ничего общего с удаляемыми устройствами хранения данных они не имеют, до обработки правил монтирования устройств (Android же на ядре Linux работает). В последних случаях были использованы «зашитые» пути к папке с примонтироваными устройствами (в различных версиях эта директория разная). Не стоит забывать, что от версии к версии правила монтирования меняются.

В конечном итоге я решил объединить все полученные знания и написал свой класс, который может нам вернуть пути к внешним и удаляемым устройствам.

Описание кода

Был создан класс MountDevice , который содержит в себе путь к устройству, тип устройства и некий хэш.
Типов устройств выделено два (внутреннюю память я не стал трогать, так как к ней доступ можно получить через API системы).

Public enum MountDeviceType { EXTERNAL_SD_CARD, REMOVABLE_SD_CARD }
И был создан класс StorageHelper , который и осуществляет поиск доступных карт памяти.

В классе StorageHelper реализовано два способа поиска - через системное окружение (Environment ) и с использованием утилиты Linux mount , а точнее результата ее выполнения.

Способ первый - Environment
При работе с окружением я использую стандартную функцию getExternalStorageDirectory() для получения информации о внешней памяти. Чтобы получить информацию о удаляемой памяти, я использую переменную окружения "SECONDARY_STORAGE ".

Официальных обновлений Андроид (для нашего региона) я не нашел на официальных сайтах.

На форумах я нашел информацию, что Google выпустила версию прошивки для России в январе 2015. Но очень медленно внедряется на аппараты клиентов.

Таким образом, я могу подождать, пока на мой аппарат не поступит сообщение о том, что есть обновление По. После этого я смогу обновить Андроид.

С обновлением до пользователи получили ряд ограничений на использование SD карт. Решить эту проблему до недавних пор можно было при помощи кастомной прошивки или отката к более ранней версии ОС. Теперь же былые возможности можно вернуть и на Android 4.4 KitKat . О том, как это сделать, читайте далее.

Прежде всего, вам потребуется получить root-права для своего Android устройства. Второе важное условие – это приложение SDFix . Скачать приложение на Андроид бесплатно можно прямиком с . Для этого воспользуйтесь ссылкой, указанной далее.

Установив SDFix на свой Android , вы в несколько тапов восстановите былые возможности. Принцип работы приложения заключается в том, что SDFix добавляет Android UNIX группу "media_rw" к WRITE_EXTERNAL_STORAGE , таким образом, используемый в Android 4.4 KitKat XML файл меняется на platform.xml . При этом создается резервная копия изначальной настройки platform.xml.original-pre-sdfix , которую можно использовать для восстановления ограничений. Чтобы вернуть систему к стоковому состоянию, необходимо воспользоваться проводником с поддержкой root-доступа и заменить platform.xml на platform.xml.original-pre-sdfix.

Отдельно необходимо отметить, что приложения, которые используют SD, получат более низкий уровень безопасности. Также важным является тот факт, что SDFix приводит к перманентным изменениям, а это означает, что после восстановления старых полномочий приложение можно удалить.

Давайте поговорим о том, как снять защиту записи с SD-карты памяти на Android. Многие люди сталкиваются с этой проблемой, когда пытаются скопировать или переместить файлы на SD карту. В этой статье вы найдете несколько способов как снять защиту записи Android.

Как снять защиту записи с SD-карты Android

Если при попытке скопировать файлы или форматировать SD-карту вы получаете ошибку, как на изображении выше, тогда знайте, это не ваша проблема. Более того, карта памяти не повреждена и не заражена вирусом, просто на ней установлена защита от записи. Без лишней суматохи мы рассмотрим несколько методов как снять защиту записи Android.

Как снять защиту записи Android c SD-карты с помощью Regedit

Большинство проблем и ошибок легко решаются с помощью реестра. Также мы можем использовать его, чтобы снять защиту записи Android.


Этот способ помогает в большинстве случае, но, если по какой-либо причине вы не можете его использовать, тогда попробуйте следующие методы.

Как снять защиту записи Android c SD-карты с помощью Diskpart

  1. Вставьте SD-карту памяти в компьютер и запустите командую строку. Вы можете сделать это, нажав клавишу WIN+R и написав «CMD», или просто ввести «Командная строка» в меню Пуска.
  2. В окне командной строки вы должны ввести следующие команды по порядку.

  • diskpart
  • list disk
  • select disk x (где Х – это номер вашей SD карты)
  • attributes disk clear readonly
  • clean
  • create partition primary
  • format fs=fat32

Если и этот способ не помог снять защиту записи Android, не отчаивайтесь, у нас есть еще парочка решений этой проблемы.

Изменить разрешение

  1. Вставьте SD карту памяти в компьютер. Щелкните правой кнопкой мыши на карту памяти и выберите Свойства. Затем во вкладке Безопасность вы найдете имя вашей учетной записи.
  2. Измените разрешение для SD-карты на «Чтение/запись», «Чтение/Выполнение» или «Полный контроль».

Этот способ позволит снять защиту записи Android.

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

Надеемся, вам удалось снять защиту записи Android. Если у вас остались вопросы, пожалуйста, напишите в комментариях ниже.

В операционной системе Android 4.4 KitKat есть довольно таки неприятный сюрприз, заключается он в том, что сторонние приложения не могут получить доступ к записи и чтению на карте памяти.

Компания Google сделала очень неприятную фишку/ошибку/сюрприз — абсолютно все устройства с Android 4.4 в которых можно установить карту памяти не могут полноценно работать с картой памятью, исключением из правил остаются только устройства Nexus так как в них нет слота под SD CARD. Что это обозначает для обычного пользователя? Например файловый менеджер не сможет создать/открыть папку или файл.

Для того чтобы исправить чтение и запись на карте памяти в KitKat понадобятся Root права

Способ 1 (простой вариант)

После того как на вашем Android смартфоне или планшете будут установлен Root зайдите в магазин приложений Google Play и скачайте SDFix: KitKat Writable MicroSD (бесплатное). После установки зайдите в приложение SDFix и нажмите кнопку «Continue»

После чего подождите пару секунд, пока не будет исправлена ошибка. Закройте SDFix и перезагрузите Android для того чтобы изменения вступили в силу! Все!

Способ 2 (простой, вариант для тех кто хочет больше знать)

Способ описанный чуть выше автоматизированный, но ведь можно исправить руками, тем более что это совсем не трудно! Для этого вам понадобиться установить приложение файловый менеджер, например ES проводник , предварительно предоставив ему root доступ в системный раздел .

Перейдите файловым менеджером в системный раздел:

/system/etc/permissions И найдите файл под названием: platform.xml

После чего откройте его встроенным текстовым редактором ES проводника

Найдите строку:

Добавьте чуть ниже еще один параметр

Перезагрузите Android смартфон или планшет чтобы изменения вступили в силу! Проблема с доступом к карте памяти решена!