Чуть менее двух месяцев прошло с момента релиза новой версии Android 6. Среди, несомненно, бесспорных преимуществ новой платформы, таких, как новаторский Material Design и технология Smart Lock, впрочем, известных еще со времен её предшественника, или энерго-сберегающей фичи App Standby, затесались и давние анти-фичи, влачащие свое существование еще со времен Android 4 и более ранних версий. Чем же Вас может огорчить Android 6?


Рис.1. Upset Android.

Вещь первая: ad-hoc сети


Не рутованный Android упорно продолжает не поддерживать беспроводные сети ad-hoc. Конечно, это не самая большая проблема Android: если у Вас дома стоит Wi-Fi роутер, скорее всего, Вы даже не слышали о ней. Однако если роутера у Вас нет, и Вы захотите, например, раздать Wi-Fi c ноутбука под управлением Windows, не прибегая к технологии Virtual Wi-Fi или каким-либо сторонним программам, то Ваш Android её просто даже не увидит (поэтому во времена Windows XP раздать интернет на смартфон с ноутбука было вообще технически неосуществимой задачей).

Вещь вторая: app ops — управление разрешениями


Многие приложения — многие разрешения, порой, не очень или совсем не нужные. Например, зачем офф-лайн игре запрашивать выход в интернет? Или почему нельзя ограничить условно беспланому мессенджеру доступ к журналу телефонных звонков и чтению сообщений, или запретить отправку СМС? А некоторые разрешения даже угрожают безопасности: например, разрешение на считывание IMEI — идентификатора телефона. В любом случае, после подтверждения разрешений Вы не сможете полностью контролировать то, как и с какими данными оперируют установленные приложения.

Кроме того, неуправляемые разрешения часто становятся причиной незаметной потери веб-траффика. Конечно, понятно, что система Android в первую очередь предназначена для активного пользования интернетом. Но порой это может влететь в копеечку из-за отсутствия возможности установки ограничений на доступ в веб для конкретного приложения: многие программы, да и сама система, передают и принимают данные в фоновом режиме. Ограничить такую фоновую передачу можно не для всех приложений. Особенно такая незаметная потеря траффика неприятна для мобильного интернета: Вы включите свой 3G, чтобы просто зайти на сайт в браузере, а в интернет полезут все приложения, подгруженные в оперативную память — мессенджеры, Play Market и Assistence'ы производителя девайса за обновлениями и т.д. Можно вырубить фоновые процессы в Диспетчере задач, но это не слишком эффективно: такие приложения, как WhatsApp, сидять в автозагрузке системы. Кроме того, при отсутствии Google-аккаунта пользователь даже не может отключить автообновления предустановленных приложений, не всегда нужных и иногда довольно сильно «съедающих» память, поскольку такая функция предусмотрена только в настройках аккаунта.


                              а)                              б)


Рис.2. Фоновые данные в Android 4.4.2: а) можно ограчить для Play Market; б) нельзя для ОС.

Казалось бы, решение пришло с Android 4.3 — скрытый фреймворка App ops. Однако уже в Android 4.4.2 нельзя использовать приложения App ops без рутовки. В то же время ключевой конкурент iOS имеет возможность управления разрешениями через системные настройки «Privacy».

Вещь третья, или танцы с бубном: SD-карта и управление памятью


Пользователи устройств под управлением Android, особенно бюджетных смартфонов, очень часто сталкиваются с проблемой нехватки памяти. Казалось бы, в устройство вставлена SD-карта 32 Гб, Play Market упорно отказывается устанавливать приложения. Хотя в настройках системы предусмотрен вариант установки новых и перенос существующих приложений на SD-карту, не все программы этот функционал поддерживают (и снова намек на все те же мессенджеры). Так, офф-лайн словарь (это, на минуточку, около 0,5 Гб) для Google Translate вы не за что не перенесете на SD-карту при помощи функционала системы, а если сделаете это вручную, перекинув папку, то Google Translate её попросту не увидит. И, конечно же, вновь устанавливаемые приложение будут частично занимать место и в основной памяти устройства.

Проблему с нехваткой памяти предлагается решать хаком, рутовав девайс и подменив записи в файле vold.fstab с sdcard на extsd. Но для неискушенного пользователя, скажем, дамы-домохозяйки, этот процесс не по силам. К тому же, рутованное устройство лишается гарантии, да и, говоря риторически, почему простое действие — установка на внешнюю карту — должно проходит под звуки бубна?

Нежелание разработчиков пофиксить эту проблему может быть продиктовано стремлением обезопасить приложения и всю ОС от краха при изъятии SD-карты (но, помниться, на платформе Java в лохматом 2010-м подобные действия не приводили к проблемам с прошивкой).

Вещь четвертая: обновление и совместимость


К счастью, для многих флагманских моделей телефонов и планшетных компьютеров ведущих производителей данной проблемы не существует — начиная с версии Android 5.0 апдейт для них должен проходить безболезненно при условии наличия соответствующей прошивки от производителя. Однако гаджетам-старичкам, работавшим на той же 4.4.2, перехода в светлое Android-будущее, конечно же, не предвидется — как правило, модели 2014 года (взять то LG L60..75, Sumsung'и или бюджетный Prestigio Multipad 4) не получают от производителя поддержки по обновлению с 4 до 5 версии в виду технических сложностей. Таким образом, снова встает вопрос о необходимости реализации безоговорочной технической совместимости между версиями Android для свободного апдейта на новую версию — у пользователя все уже настроено на данном девайсе, кому хочется возится с переносом данных, настроек и приложений даже при помощи синхронизирующего аккаунта Google? Да и покупать новый смартфон только из-за выхода следующего релиза ОС не каждому по карману.

Благодарю за внимание!

Комментарии (18)


  1. KennyGin
    15.12.2015 10:54
    +2

    Но ведь в Android 6 карта памяти монтируется как часть системного раздела, о чем же тогда ваш пункт 3?


    1. kolu4iy
      15.12.2015 11:22
      +1

      Так и app ops штатно в android 6+ появились. Второй пункт тоже ни о чём.


      1. NonGrate
        15.12.2015 15:18
        +2

        Скорее всего, во втором пункте автор имел в виду «нормальные» разрешения, которые не спрашиваются при их использовании. В список «нормальных» разрешений входит и подключение к интернету. То есть, разработчик не обязан спрашивать у пользователя разрешения на использование интернета, фонарика, бт и всякого подобного.


  1. Losted
    15.12.2015 11:30
    +2

    Бредовая статья. Видимо, автор не видел Зефирку.

    Пункт 1: Wifi Direct есть. (Moto X Pure)
    Пункт 2: Управление разрешениями как раз-таки встроили в 6ой версии «из коробки»
    Пункт 3: В 6ой версии дали возможность примонтировать SD-карту, как часть внутренней памяти (не без спецэффектов, конечно, но уже можно)


    1. memtew
      15.12.2015 13:33
      +4

      Я подозреваю, что автор начал писать статью ещё два года назад и только сейчас закончил, а для красоты 4 в заголовке исправил на 6.


      1. Chamie
        17.12.2015 11:33

        И за два года даже орфографию не проверил.


  1. i360u
    15.12.2015 11:31

    Вывод: Android 6 — очень хорошая система, поскольку недостатки даже «высосать из пальца» непросто.


    1. FoxF
      15.12.2015 12:26

      Это заговор — вам показывают высосанные из пальца недостатки, чтобы вы не замечали остальных :)


  1. Artima
    15.12.2015 11:31
    +1

    Что-то все пункты какие-то олдфаговские. Памяти не хватает, обновиться «нокия 3310» не может на Android 6 и даже Windows XP не может раздать интернет на мобильный. Хотя догадаться, что XP вообще может раздать интернет через WiFi крайне не просто. Хотелось было возмутиться по поводу управления прав… так ведь не поспоришь — приложения в фоне используют интернет. У автора видно, что Android в фоне скачал целых 5Кб! Как бы правда. И приложения ломятся толпой в интернет. Тоже правда. Хотя и хочется задать вопрос о связи этой проблемы с современным покрытием LTE и даже GPRS. И как автор представляет в этом плане управление правами не понятно. Запрещать отдельно приложениям передачу данных? Настраивать порядок в котором программы будут ломиться в открытый интернет? Настраивать в каком формате программа может интернет использовать? Не понятно.

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


    1. sergeevms
      15.12.2015 11:39
      +1

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


      1. NightGhost
        15.12.2015 12:04

        Тут есть обратная сторона. Иногда мне нужно, чтобы везде было тихо, а иногда — везде громко. Если в каждом приложении поставить кастомную громкость, то потом замучаешься обратно все к единому виду приводить.


        1. artemerschow
          15.12.2015 12:17
          +3

          Ну, имхо, стоит сделать как в винде — громкость приложений, общая громкость, которая умеет пропорционально менять громкость всех приложений и, плюсом, (чего нет в винде) сброс уровней громкости. И всё.


      1. Eklykti
        15.12.2015 17:43
        -1

        Угу, давайте ещё на ведроид пульсаудио притащим, там ведь так мало пожирателей батареи!


    1. Lsh
      15.12.2015 17:13

      >Настраивать порядок в котором программы будут ломиться в открытый интернет?
      А вот это очень здравая мысль! И дело тут даже не в деньгах. Мало ли ситуаций, когда ты где-то в попе, с плохим интернетом и нужно что-то в этом интернете узнать. Было бы неплохо иметь галочку «Давать интернет только активному приложению (в фокусе)».


      1. kraleksandr
        15.12.2015 19:00
        +2

        Вроде же есть галочка для этого в настройках рядом с графиком расхода трафика. «Ограничить фоновые данные» или как-то так…


        1. Artima
          16.12.2015 01:33

          И правда, проверил, для каждого приложения можно включить ограничение.


    1. Chamie
      17.12.2015 11:39

      Хотя догадаться, что XP вообще может раздать интернет через WiFi крайне не просто.
      И таки может и даже не в режиме Ad-Hoc! Хоть и с помощью стороннего софта (Connectify и прочие).


  1. Denai
    15.12.2015 16:46

    Не знаю как в 6 андроиде, а в 5-м с wifi и ноутбуками всё ок, лично пользовался вышеописанной схемой