И наши приложения которые мы предоставляем на наших мобильных устройствах если продукт xiaomi пр
Очистка смартфона от ненужных приложений давно стала привычным делом для всех владельцев Xiaomi, ведь как вы знаете, MIUI недостаточно хорошо оптимизирована под разные модели смартфонов, а значит имеет в своём составе приложения и службы из-за которых смартфон быстро разряжается, медленно работает и имеет меньше памяти чем должен.
Так как на канале много новых пользователей, а все предыдущие статьи на эту тему никак не каталогизированы, я подумал что будет хорошей идеей, собрать всё воедино в трёх публикациях:
- Список приложений для отключения на каждом смартфоне
- Приложения, которые есть на смартфонах под управлением Snapdragon
- Приложения характерные для моделей с чипами от MediaTek.
Отключение будет происходить с помощью программы «ADB App Control», инструкцию по работе с которой вы найдёте в конце этой статьи. Каждая из публикаций будет создана в формате списка с названиями, именами пакетов и моими короткими комментариями.
Я действительно считаю это приложение одним из самых бесполезных, ведь оно отвечает за разные сервисы от операторов связи. Постоянно потребляет мобильный интернет и проявляет фоновую активность расходуя батарею. Не знаю ни одного человека которому оно может быть полезно, поэтому удаляю.
Не работает нигде кроме Google Pixel, при этом может являться причиной быстрого разряда аккумулятора, особенно в случае восстановления смартфона из резервной копии.
После обновления до MIUI 12.5 Enhanced на некоторых моделях смартфонов наблюдалось возрастание расхода батареи вызванное именно этим сервисом.
Реклама Xiaomi и сервисы партнёров Google
Очевидный пункт, который нельзя не упомянуть, я думаю в объяснениях не нуждается, поэтому просто оставлю названия и имена пакетов:
Неактуальные для нас с вами
В следующем разделе перечислены все приложения, которые не работают за пределами Китая. Кстати в MIUI 13 Xiaomi обещает подгонять список установленных сервисов под каждый конкретный регион. Они будут устанавливаться после перехода, как и некоторые рекламные сервисы в нынешней версии.
- Mi Coin (com.xiaomi.payment) - валюта Mi Community для китайского региона
- MConnService (com.miui.vsimcore) - виртуальные китайские карты для оплаты
- Справочник (com.miui.yellowpage) - определитель номера для пользователей из Китая.
- Mi Pay (com.mipay.wallet.in) - платёжный сервис
- SoterService (com.tencent.soter.soterserver) - используется для идентификации пользователя в Китае
- Mi Recycle (com.xiaomi.mirecycle) - индийский акционный сервис
- WAPI certificate (com.wapi.wapicertmanage) - Китайский аналог Wi-Fi
Ну и наконец два приложения, которые могут явиться причиной малого количества свободной оперативной памяти. Постоянно проявляют фоновую активность при этом не неся никакой практической пользы для владельцев смартфонов Xiaomi: MiuiDaemon (com.miui.daemon), Catchlog (com.bsp.catchlog).
Ещё раз отмечу, что перечисленные в этой статье службы и приложения можно именно удалять через ADB App Control, так как в ходе тестов я не заметил никаких проблем на пяти устройствах. Но чтобы быть максимально уверенным я всё-таки рекомендую вам делать бекап.
Надеюсь статья заслуживает вашего лайка и комментария, чтобы я понимал что стоит продолжать👍
Сегодня многие пользователи регулярно используют свои мобильные устройства для работы. И главная проблема в том, что иногда люди не могут отделить личную жизнь от работы. По этой причине, Xiaomi подумал о тех пользователях, у которых работали некоторые из его моделей, поэтому принес новинка от MIUI 10 что не все знают, Режим компании , так как многие его не заметили.
Этот режим не только поможет нам каждый раз превращать наш терминал в мобильный для бизнеса или работы, но также предоставит нам ряд характеристик, которые мы объясним позже. Кроме того, терминалы азиатского производителя имеют различные инструменты или методы, которые помогают нам настроить наш обычный телефон в мобильном телефоне для работы в любое время. Поэтому мы объясним все возможности, которые предлагает нам мобильный телефон Xiaomi для превращения своих терминалов в бизнес-телефон.
Что такое режим компании?
Функциональность, которую мы представляем вам сегодня, можно найти среди дополнительных настроек тех мобильных телефонов азиатского производителя, которые имеют версию MIUI 10 или выше. Кроме того, это важная новинка для всех тех пользователей, которым в повседневной жизни приходится использовать два разных терминала, чтобы отделить свою личную жизнь от работы. Ну, с помощью режима компании, также известного как Режим предприятия , мы сможем превратить Xiaomi в наш рабочий мобильный телефон.
Кроме того, это не только поможет нам в этом, но и добавлены различные характеристики, которые дадут нам определенные функции для большего комфорта при использовании указанного мобильного устройства, это даже гарантирует еще более высокую безопасность наших личных данных. Хотя главный негативный фактор, который мы можем обнаружить, заключается в том, что, поскольку он не так хорошо известен, не удалось полностью использовать все преимущества наличия этой дополнительной функции.
Прежде всего, он будет очень полезен тем компаниям, которые хотят предоставить своим сотрудникам эксклюзивное устройство для деловых целей. Это означает, что может быть применен ряд ограничений, чтобы эти терминалы использовались только для задач определенного бизнеса. В основном, приложения, связь, оборудование или данные, среди многих других функций, можно контролировать или ограничивать. Так что ограничений не будет, так как вы сможете полностью освоить все параметры вашей системы.
Кроме того, он позволяет нам централизованно управлять пользователями, данными, приложениями и поведением с помощью гибких служб удаленной настройки и управления. И, как могло быть иначе, этот режим обеспечивает механизм безопасности для всей информации, которую мы имеем в указанном терминале.
Как активировать его на вашем Xiaomi
Китайский производитель упростил нам задачу, чтобы мы могли без проблем включить этот режим. Кроме того, когда мы получим доступ к этой функции, мы получим О режиме компании кнопка. В том случае, если мы нажмем его, он приведет нас непосредственно к очень подробному объяснению того, как мы должны активировать его шаг за шагом в нашем терминале и на чем основана эта функция Xiaomi.
Тем не менее, мы расскажем вам, как это сделать, не прибегая к этому, поскольку Условия будут на испанском языке, но тогда они не будут перенаправлять на веб-сайт производителя, который не переведен. Первое, что вам нужно сделать, это ввести Настройки> Дополнительные настройки> Режим компании . Оказавшись внутри, появятся две опции: одна из них, которую мы объяснили ранее, а другая - для ее активации.
После нажатия на эту опцию он перенесет нас в раздел, где будет запрашивать учетные данные нашей компании. Для этого мы должны зарегистрироваться в качестве разработчиков в «My Enterprise Services», чтобы получить код и лицензию. В конце страницы, на которую они нас отправляют, появится форма, которую мы должны заполнить информацией о нашей компании, чтобы они могли связаться с нами.
Как только мы завершим все, о чем нас просят, и мы уже сможем завершить указанную регистрацию. Нам нужно будет только повторно войти в этот режим, нажать «Активировать» и ввести данные, которые нам предоставили. После этого он попросит нас принять условия конфиденциальности, и у нас уже будет эта дополнительная функция в нашем терминале.
Другие инструменты для работы с мобильным телефоном
К счастью, если вы не хотите ждать, пока сможете использовать свой личный мобильный телефон для работы, существуют разные методы, которые помогут нам в этом. Кроме того, этому будет способствовать не только операционная система Google, но мы также находим два других способа, которые сам азиатский производитель предлагает нам, чтобы иметь возможность отделить как приложения, так и наши личные данные от тех, которые связаны с нашей рабочей средой.
Рабочий профиль Android
На всех устройствах, у которых есть Androidдля этого можно настроить различные профили, чтобы мы могли отделить нашу личную жизнь от работы. И с этим типом профиля мы можем безопасно и конфиденциально использовать одно и то же устройство во время работы, как и в повседневной жизни. Кроме того, с появлением Android 11 конфиденциальность была еще больше улучшена, что действительно беспокоило многих пользователей, поскольку они не знали, контролируются ли их терминалы компанией.
Этот профиль Android 11 пришлось назначить новые функции, которые до этого были доступны только на мобильных телефонах, полностью управляемых определенной компанией. Как и в случае с защитой управления активами, политики личного использования, ограничивающие, какие приложения могут использовать, или управление аппаратными функциями (Bluetooth, камера, съемное хранилище).
Чтобы настроить эту опцию в нашем Android-терминале, нам нужно получить доступ к его настройкам и выбрать опцию под названием Google. Когда мы находимся внутри, нам нужно будет нажать `` Настроить и восстановить '', что позволит нам увидеть нужный нам параметр, который дает нам возможность настроить указанный профиль, где мы найдем все, что нам нужно.
- Проведите снизу вверх по экрану.
- Перейдите на вкладку «Работа».
- Внизу экрана поверните Рабочие приложения включить или выключить.
Создайте второе место на своем мобильном телефоне
Мы также находим еще одну возможность, которую предлагают телефоны этого азиатского бренда. То есть факт создание второго пространства в нашем мобильном устройстве для выполнения ряда функций, как в случае использования его только для нашей рабочей среды. Точно так же это позволяет нам дубликаты приложений , имея возможность носить с собой рабочий аккаунт в социальной сети в одном месте и личный в другом. Что касается уведомлений, если они нам понадобятся в обоих пространствах, это также позволит нам продолжать их получать.
Процесс запуска на нашем мобильном телефоне Xiaomi имеет два разных способа. Первый будет делать это через Настройки> Второе пространство, а второй - из приложения безопасности. В обоих случаях мы найдем одни и те же параметры, и мы можем создать их одним нажатием кнопки. И чтобы его устранить, мы должны проделать те же шаги.
Гостевой режим
Другой альтернативой, предлагаемой устройствами с Android, является гостевая функция , способ, который упростит нам передачу терминала другим людям. Так как при его активации будут даны определенные ограничения, чтобы у них не было возможности видеть галерею, приложения или другие данные.
Чтобы активировать его, нам нужно будет перейти в «Настройки»> «Система» и щелкнуть категорию «Несколько пользователей». Когда мы находимся внутри, это дает нам возможность изменить других пользователей или создать нового, если мы еще не настроили его. Кроме того, это позволяет нам персонализировать каждого из них, добавив фото и имя.
Немного неприятно, но смартфоны в курсе всех наших тайн и привычек. Самое время и нам наконец узнать, что умеют телефоны Xiaomi и Redmi помимо звонков, съемки, доступа интернет и других базовых функций. Приготовьтесь заметно упростить себе жизнь: мы раскрываем все секреты MIUI в смартфонах Xiaomi!
Что такое MIUI
MIUI — это пользовательский интерфейс, или оболочка операционной системы Android, на смартфонах Xiaomi и Redmi. На апрель 2021 года самая новая версия этой системы — MIUI 12.
С каждой прошивкой добавляются новые функции, с которыми телефоны Xiaomi становятся еще более удобными.
У MIUI есть и плюсы и минусы. Среди недостатков многие пользователи отмечают наличие в системе рекламы, которая всплывает при выполнении некоторых задач. Но преимуществ все равно больше. Например, MIUI очень удобна для кастомизации: например, у нее есть специальные приложения, которые меняют не только обои для домашней страницы и экрана блокировки, но и дизайн иконок. А помимо стандартных возможностей Android, телефоны Xiaomi могут выполнять недоступные остальным задачи. Например, автоматически записывать звонки, сканировать документы и транслировать радио. Все эти приложения встроены прямо в систему. Но MIUI — это не только приложения. А что еще — сейчас расскажем.
Звонки
Если вы зайдете в раздел вызовов и выберите сначала клавиатуру набора номера, а потом — три полоски в левом нижнем углу, вы перейдете в раздел дополнительных настроек. В нем есть несколько скрытых функций, которые сделают интерфейс звонка удобнее.
Нарастание громкости звонка
Вы задаете определенный уровень, и звуковой сигнал будет постепенно становиться громче во время звонка. Если вы находитесь рядом с телефоном и можете быстро поднять трубку, то громкий звонок вам не нужен и он останется тихим. Но если вы в другой комнате и не слышите, что вам звонят (либо же телефон в сумке), то рингтон станет громким и вы точно заметите входящий вызов.
Приглушение громкости звонка
Смартфоны Xiaomi и Redmi, оснащенные гироскопом, могут снижать громкость звонка, когда пользователь берет их в руки. Если нет возможности говорить, а сбросить звонок нельзя, но вы не хотите беспокоить шумным вызовом окружающих, включите эту функцию. Как альтернатива ей — опция отключения звонка при переворачивании телефона экраном вниз.
Настройки звонков и путь к параметрам звукового сигнала на примере Redmi Note 5. Скриншоты автора
Управление и интерфейс
Далеко не всегда нам удобно управляться с большим экраном телефона. Мы расскажем о том, как это делать проще.
Управлять одной рукой
В расширенных настройках смартфонов Xiaomi есть функция для удобного управления одной рукой. Поскольку сами телефоны крупные, иногда пальцем трудно дотянуться до верхних углов — можно включить эту функцию и подтягивать приложение ближе к одному или другому краю.
Разделить рабочий стол
Чем больше становится дисплей телефонов, тем больше у него появляется опций. На фаблетах можно разделить экран на две половины и запустить одновременно два приложения. Эта функция появилась в 9-й версии MIUI. Откройте приложения, зажмите нужное окно и дождитесь всплывающего меню. В нем есть кнопка с замком, двумя прямоугольниками и ромбом. Нам нужна средняя: нажмите на нее и приложение окажется в верхней половине экрана. В нижней можно выбрать второе (оба должны быть уже запущены). Чтобы выйти в обычный режим, откройте все активные приложения и нажмите кнопку «Выход» сверху.
Функции управления одной рукой и разделения экрана на примере Redmi Note 5. Скриншоты автора
Сенсорный помощник
Это целая система для того, чтобы управлять телефоном одной рукой было удобнее. Найти помощник можно через «Настройки» > «Расширенные настройки» > «Сенсорный помощник». Включите его, и в правом углу экрана появится небольшой значок, нажав или потянув за который, вы откроете всплывающее меню. Из него можно перейти на домашний экран, в меню, заблокировать телефон, сделать скриншот или вернуться назад. Это намного удобнее, чем тянуться пальцем к углу экрана.
Защита данных и пароли
Многие производители сейчас делают упор на защиту персональных данных пользователя, а Xiaomi подошли к этому с особым вниманием.
Защитить приложение
Если вы не хотите, чтобы какое-то из приложений было открыто другими пользователями, вы можете защитить его паролем. Это делается через «Настройки» > «Приложения» > «Защита приложений». Далее можно выбрать те, которые вы хотите защитить, и тип пароля: графический ключ, цифровой код или стандартный цифро-буквенный.
Путь к настройке защиты приложения паролем на примере Redmi Note 5. Скриншоты автора
Скрыть фотографии
Пароль от сети Wi-Fi
Калькулятор
В приложении калькулятора есть неочевидные функции. Например, там можно конвертировать валюту, вести бюджет, рассчитывать индекс массы тела.
Расширенные настройки калькулятора на примере Redmi Note 5. Скриншоты автора
Конвертер величин
Если нажать на вторую иконку в верхнем ряду приложения калькулятора, откроется список конвертеров, среди которых есть перевод объема данных, расчет возраста, скидок, дат, счетчик индекса массы тела и многое другое.
Финансовые инструменты
Также через калькулятор можно считать доходы от инвестиций, вести контроль за кредитами и переводить валюты из одной в другую.
Инженерный калькулятор
Если вам нужен расширенный формат калькулятора, то в левом нижнем углу есть кнопка с двумя квадратами и стрелками. Она переводит калькулятор в инженерный формат, и вам становятся доступны такие функции, как вычисление синуса, косинуса, квадратного корня и т. д.
Галерея и скриншоты
И в галерее Xiaomi не обошлось без маленьких приемов, которые заметно упрощают жизнь пользователю смартфона.
Поворот снимка
В галерее можно поворачивать любой снимок или изображение, если захватить его двумя пальцами: двигайте так, как нужно. Картинка не фиксируется в повороте, можно просто посмотреть, как она будет выглядеть, или примериться к кадрированию.
Создание скриншота
В MIUI 9 также можно выбрать другие варианты в меню настроек: «Кнопки и Жесты» > «Снимок экрана».
Как сделать скриншот полного экрана (на примере Redmi Note 5). Скриншоты автора
Скриншот с прокруткой
Если вы делаете скриншот экрана, в правом верхнем углу появляется небольшое окно, в котором можно выбрать опцию «Прокрутка». Телефон автоматически скроллит страницу до конца, после чего записывает скриншот целиком. Это удобно, если вам нужно сделать снимок экрана, а весь текст или картинка в него не влезает.
Советы по MIUI 11
Некоторые возможности доступны не во всех версиях прошивки. Расскажем далее, какие опции появляются в MIUI 11.
Динамическая смена размера текста
MIUI 11 стала первой операционной системой с новой функцией динамического изменения размера шрифта. Она называется Milan Pro: текст меняется, в зависимости от его количества и объема на странице. Буквы и цифры могут стать ярче, насыщеннее или крупнее.
Всегда активный экран
Поскольку многие телефоны с MIUI 11 поддерживают технологию «всегда активного экрана», создатели обновленной прошивки для Xiaomi добавили разные дизайны для дисплея. Они не расходуют зарядку и выглядят совершенно по-разному. Есть и яркие узоры, и калейдоскопы, и очень спокойные скромные аналоговые циферблаты.
Телефон может отображать уведомления пульсирующим символом в углу экрана. Это удовольствие доступно владельцам смартфонов серии Mi 9 и Redmi K20.
Режим фокусировки
Трансляция экрана
Сервис называется Miracast, и поддерживают его почти все модели Xiaomi, но оптимизация экрана доступна только с 11-й версии прошивки. Чтобы включить опцию, перейдите в «Настройки» > «Подключение и общий доступ» > «Трансляция».
Путь к настройке трансляции на внешний экран на примере Redmi Note 5. Скриншоты автора
Секреты MIUI 12
12-я версия MIUI принесла с собой еще несколько новых функций.
Виртуальная идентичность
Эта функция защищает ваши личные данные от приложений и веб-сайтов, скрывая информацию. То есть MIUI будет отправлять разработчикам и системам аналитики настоящие или измененные данные, в зависимости от ваших указаний.
Распознавание текста с фотографий
В оболочке Android MIUI 12 встроено распознавание символов через камеру. То есть вы можете, например, сфотографировать документ и перевести его в текстовый формат. Если раньше для этого нужно было внешнее приложение, то сейчас телефон всё проделает самостоятельно.
Картинка в картинке
Пока вы используете одно приложение, можете свободно запустить еще одно. Все это благодаря функции «Картинка в картинке», или PiP. Она доступна пользователям смартфонов Xiaomi с MIUI 12. Оба приложения будут активны: например, можно продолжать смотреть видео на YouTube, пока листаете текст или общаетесь с друзьями.
Настройка анимации
MIUI 12 намного «свободнее» других версий интерфейса. В ней можно настраивать не только дизайн всей системы, но и анимацию, которой сопровождаются действия. Когда вы закрываете или открываете приложение, а также используете жесты, анимация может быть практически любая, а выбрать ее можно через настройки.
Хитрости MIUI
Помимо неочевидных функций у телефонов Xiaomi и Redmi есть еще масса возможностей, о которых мы или не знаем, или попросту забываем.
Язык
Если вы купили телефон Xiaomi с рук или или с уже активной системой на другом языке, не переживайте — его можно поменять через «Настройки» > «Расширенные настройки» > «Язык и Ввод» > «Язык». Это удобно, если вам сложно воспринимать меню на неродном языке или вы учите новый.
Блокировка звонков
Если вам часто звонят те, с кем вы не хотите общаться, в том числе маркетологи и шарлатаны, добавляйте номера в черный список — как во время звонка, так и позже через настройки. Делается это так: выбираете контакт и заходите в его профиль. Нажимаете на три вертикальных точки в правом верхнем углу и в выпадающем окне выбираете «Заблокировать».
Эквалайзер
Слушая музыку с Xiaomi или Redmi в наушниках, вы можете настроить звуковые эффекты и громкость каналов. Для этого перейдите в «Настройки» > «Звук и вибрация» > «Наушники» > «Настройки звука». Там доступны и конкретные модели наушников, и специальные опции, и даже улучшение качества звука.
Настройки звука смартфона Redmi Note 5. Скриншоты автора
Клонирование приложений
Если у вас несколько аккаунтов в соцсети или в игре, вы можете использовать две версии этого приложения. Зайдите в «Настройки» > «Приложения» > «Двойные приложения». Появится список всех программ, установленных на телефон. Выберите то, что хотите клонировать, и используйте два приложения с разными аккаунтами без постоянной авторизации.
Второе рабочее пространство
Через настройки вы можете клонировать не только одно приложение, но и целиком пространство смартфона. Например, когда вы хотите дать его поиграть ребенку, но боитесь, что он нахимичит в ваших аккаунтах. Чтобы создать «копию» смартфона, перейдите в «Настройки» > «Особые возможности» > «Второе пространство». У вас появится чистая оболочка MIUI, которую можно организовать с нуля.
Уведомление о перегреве
Это важно для тех, кто часто играет с телефона. Любое гейм-устройство нагревается от нагрузки, но телефоны Xiaomi и Redmi могут оповещать владельца о том, что им требуется отдых. Для этого перейдите в «Настройки» > «Питание и производительность» > «Питание». В правом верхнем углу будет значок шестеренки: нажав на него, выберите температуру, при которой телефон пришлет вам уведомление.
Настройки потребления заряда на примере Redmi Note 5. Скриншоты автора
Настройки питания
В том же окне питания можно еще и оптимизировать работу батареи. Если вы выберите эту опцию, то телефон закроет все открытые неактивные приложения, которые расходуют заряд. Всё для того, чтобы дать смартфону дополнительное время автономной работы. Это очень удобно, если батарея садится, а впереди еще половина дня.
Режим чтения
Во всех приложениях можно активировать специальный режим, который снижает нагрузку на глаза. Экран приобретет более теплый свет, и, несмотря на то, что цвета изображений немного изменятся, читать станет удобнее. Температуру оттенка можно регулировать, а активируется режим так: «Настройки» > «Дисплей» > «Режим чтения».
Запись экрана
На домашнем экране телефонов Xiaomi и Redmi есть папка «Инструменты», в которой находится приложение «Запись экрана». Используя его, вы можете фиксировать все, что происходит на дисплее телефона. Это удобно для подкастов, туториалов или игровых стримов. Нажмите «Пуск» для начала записи и «Стоп» для окончания. Все видео будут сохранены в папке Screen Recorder и доступны для просмотра в галерее.
Теперь вы знаете, как делать все быстрее и проще с помощью трюков и приемов, спрятанных в оболочке Android от Xiaomi — MIUI. Даже если вы собаку съели на этом интерфейсе, то все равно мы уверены, что эта статья открыла для вас хотя бы парочку новых возможностей вашего смартфона.
Честно признаться, у меня не было планов писать и публиковать эту статью, но, после того, как за два месяца увидел в ближнем кругу коллег 5 штук свежеприобретённых телефонов от Xiaomi, и недавнюю статью на Geektimes, рекламирующую управление умным домом от Xiaomi, ко мне пришла совесть и, сцуко, потребовала поделиться знанием с остальными.
Для начала небольшая вводная часть для тех кто не в теме. Есть такая компания Xiaomi, которая делает неплохие по начинке телефоны и заливает в них кастомизированный Android. Бизнес модель, как недавно официально было заявлено — «По сути мы раздаём наши смартфоны, не зарабатывая на этом денег. Нас больше заботят долгосрочные источники дохода. Мы могли бы продать 10 миллиардов смартфонов и не заработать на них ни цента». Источник раз и два.
Заглянув в сентябрьскую статью на Security lab и ещё вот в эту жалобу, у меня лично возникло ощущение, что телефон Xiaomi это что-то типа поводка на котором владельца водит Большой брат (утрирую, конечно же).
Это и стало основным мотивом проведения исследования поведения телефона Xiaomi redmi 3S
с прошивкой MIUI Global 8.1 Стабильная 8.1.1.0 (MALMIDI)
Исследование подопытного кролика и обнаружение проблемы
Беру новенький телефон из коробки. Включаю его и прохожу через мастера начальной настройки, предварительно включив запись трафика на Wi-Fi роутере. Ровно через две секунды, после того как телефон подключился к точке доступа, началось скачивание файла размером около 8Мбайт с одного из серверов Xiaomi. Это был обычный zip архив, внутри которого лежала куча всего и, в том числе, файл AnalyticsCore.apk, упомянутый в статье на SecurityLab.
Дальше — больше. В общей сложности, за всё время наблюдения, я насчитал чуть меньше восьми десятков имён серверов в разных доменах. Сразу оговорюсь, что в этом числе нет серверов Google и Facebook, приложения которых также предустановлены. Просто потому что я их считал отдельно. С ними тоже всё «весело».
Дополнительно смущало то, что большей частью запросы были небольшими (объём принятого переданного трафика TCP сессий не превышал 1-2Кб), но, т.к. наши сотовые операторы округляют объём трафика вверх (Например, Tele2 до 150Кб), то, при неудачном совпадении, можно «накачать» таким образом существенные объёмы трафика, а в роуминге неожиданно попасть на деньги.
Тех, кого сей факт не смущает могут дальше не читать, т.к. дальше будет описание конкретики изоляции трафика от приложений, вшитых в заводскую прошивку.
Предварительные условия
Первое что необходимо — это рутовать телефон. Как это делается в случае Xiaomi я здесь описывать не буду, отсылаю желающих пройти этот путь к полной версии этой статьи (ссылка в конце).
Второе — это влить в телефон прошивку через кабель и стереть ВСЕ пользовательские данные.
Третье — телефон НЕ ДОЛЖЕН иметь доступа в интернет после залива свежей прошивки.
Update. До момента установки нижеописываемых ограничений, разумеется.
Disclamier. Все дальнейшие манипуляции над телефоном Вы делаете на свой страх и риск.
Ответственность за любой результат лежит на том, кто именно делал описываемые ниже действия.
Небольшая техническая вводная часть
Серверы, к которым обращается телефон, в большинстве своём расположены в облаке Amazon, поэтому обращения к ним происходит по именам, которые ресолвятся через round-robin DNS в разные IP адреса из разных подсетей /16. Блокировать их все по подсетям смысла особого нет — так можно половину интернета отфильтровать, что не есть хорошо. Блокировать по именам — хорошо, но не факт, что имена хостов из L3 доменов не генерируются динамически. Идеально было бы прибить все приложения, которые обращаются к серверам Xiaomi, но, как показала практика, глубина их интеграции в Android такова, что после удаления некоторых из них телефон может просто отказаться загружаться.
Далее. К внешним серверам обращается не один процесс, а многие, при этом задачу усложняет наличие в Android UID sharing, когда под одним UID могут генерировать сетевой трафик разные процессы (приложения). Более того, один из полезных процессов (отвечающий за GPS) надо выпускать во внешний мир, чтобы скачивать небольшие обновления, но при этом он сидел под тем же UID, что и восемь штук процессов, рвущихся к серверам Xiaomi.
Также надо упомянуть про ограниченность инструментария, доступного для решения вышеописанных задач, т.к. большая часть приложений имеющих в названии firewall доступных на Play Market работают через т.н. VPN, т.е. от сливов информации до запуска приложения они не защищают.
Большая часть того, что будет рассказано дальше для профессиональных разработчиков Android есть банальная истина, но всем остальным это позволит понять почему фильтрация построена именно таким образом.
В отличие от обычного Linux, где есть файлы конфигурации и стартовые скрипты, лежащие в /etc, в Android всё сделано несколько иначе. Общее управление сетью осуществляет Connection Manager, который дёргает системный демон netd, который, в свою очередь, вызывает iptables с определёнными параметрами командной строки. Соответственно, вызывать IPtables из скрипта начальной загрузки (init и прочих) особого смысла нет — netd при старте всё равно вызовет iptables, очистит правила и зальёт свои.
Единственный выход оставленный Google — писать необходимые команды конфигурации iptables в скрипте /system/bin/oem-iptables-init.sh. Путь к этому скрипту и его имя жёстко прописаны внутри исходного кода демона netd.
Для фильтрации статических имён хостов можно редактировать файл /etc/hosts, но при этом надо помнить про их количество и возможность их динамической генерации.
Дальше будет рассказ как это всё делалось.
Удаление и заморозка (если нет уверенности) ненужных программ
При помощи бесплатной версии Titanium Backup можно посмотреть соответствие между именем программы, показываемое в системе (Play Market), её кодовым именем (com.google.vending) и, при необходимости, удалить то, что явно не нужно.
Недостаток бесплатной версии — не умеет делать заморозку программ, посему заморозку делаем через ADB shell при помощи package manager. Пример:
Фильтрация сетевых запросов
Disclamier 2.В данной статье описано КАК можно фильтровать «левую» сетевую активность телефона. Что конкретно фильтровать — каждый волен решать сам.
Как это можно делать.
1. Cамое простое — заполнение файла /etc/hosts записями имён серверов c IP адресом 127.0.0.1. Мой набор серверов лежит на Google Drive в папке Files.
Недостаток варианта — невозможность блокировки неизвестных и динамически генерируемых имён хостов и доменов L3/L4.
Update. Несколько раз обнаруживал странное поведение Netfilter/IPtables. После загрузки телефона в таблице действующих правил оказывались не все правила, перечисленные в скрипте. Если перезагрузить телефон ещё раз — все правила оказывались на месте. Прям шайтан-машина, а не телефон. В документации нашёл описание параметра --wait, который вроде бы должен решать эту проблему. Но, для гарантированного решения проблемы, сделал ещё вызов IPtables из скрипта не напрямую, а через несложную функцию, которая проверяет код завершения и, при необходимости, повторно выполняет команду с небольшой задержкой, опять же проверяя результат.
2. пишем команды фильтрация отправки пакетов на подсети /16 и /24 стандартными правилами Netfilter/IPtables в файл oem-iptables-init.sh. Здесь их не описываю, желающие напишут их сами, либо найдут в полной версии статьи.
Update. Недостаток варианта — большая часть серверов расположена в облаке Amazon и имеет переменные (round-robin DNS) IP адреса. Для гарантированной их фильтрации придётся закрыть не один десяток подсетей /16, что не есть хорошо. Можно ненароком забанить и полезные сайты. Но для статичных хостов (если их немного) это решение вполне подходит.
3. Фильтруем DNS запросы к ненужным нам доменам. Это несколько сложнее, поэтому опишу подробнее.
Updated.В составе IPtables, штатно идущем в Android есть модули расширения функционала, которыми мы дальше и воспользуемся. Помня, что DNS запросы отправляет система (UID 0) пишем правило:
Вторая строчка пропустит все остальные DNS запросы. Комментарии я указал для удобства, чтобы команда iptables -L -v показывала результаты блокировок нагляднее.
5. Фильтруем доступ в интернет по приложениям (у меня Google Chrome имел UID 10060). Разрешаем выход в интернет Google Chrome и запрещаем всем остальным приложениям.
Слабым местом этого способа фильтрации является его опора на наличие отметки UID на каждом конкретном пакете при прохождении его через Netfilter/IPtables. Обнаружилось это по непонятным TCP соединениям к серверам Google, пакеты которых не содержали UID. Исследование показало, что эти пакеты инициированы процессом Google Captive portal login. Я решил эту проблему обходным путём — просто выключив эти запросы командами в ADB shell:
Радует, что (судя по накопленной статистике за несколько суток перехвата Wi-Fi трафика), никаких иных системных процессов отсылающих пакеты без UID в исследовавшемся телефоне нет.
Update. Дальнейшее наблюдение показало как я ошибался. Такие «тихие» процессы есть, но часть из них невинно общается друг с другом через адрес 127.0.0.1, что ненаказуемо.
Всё остальное надо банить.
Поэтому, для их правильной фильтрации, надо добавить в самое начало скрипта ещё две строчки:
Update. Уже после опубликования статьи для меня окончательно стало ясно, что UID приложений, задаваемый системой при установке приложения, при обновлении и/или переустановке приложений может непредсказуемым образомменяться. Следовательно, доступ в интернет для приложения тоже отвалится и надо будет переписывать правило Netfilter/IPtables заново.
Для решения этой проблемы набросал небольшой кусок скрипта, который читает из хвоста файла наименования приложений, проверяет их наличие в системной базе приложений, и, при наличии, берёт оттуда же UID приложения и динамически (в процессе работы скрипта) формирует правило Netfilter/IPtables.
Строго говоря — чтение параметров из тела скрипта — это тоже костыль. Но меня оправдывает то, что на момент работы скрипта, подмонтировать файловую систему доступную снаружи при обычной работе телефона — невозможно. В папке /dev нет соответствующих файлов устройств. Допускаю, что это может быть особенность прошивки конкретного телефона.
Текст специально сделал максимально подробным, для лучшего понимания.
После переустановки/обновления приложения нужно всего лишь перезагрузить телефон.
6. Для целей мониторинга работы правил Netfilter/IPtables можно добавить ещё вот такую строчку:
Параметр IP адрес отправителя (--source 10.1.30.42) можно опустить, но в этом случае лог будет завален записями сетевой активности процессов, завёрнутых на адрес 127.0.0.1 файлом hosts. Лог можно читать через команду dmesg (dmesg | grep IPtables) в ADB Shell.
Версию статьи, которая писалась как полная инструкция по решению этой проблемы с Xioami Redmi 3S я выложил на Google Drive. Сюда её выкладывать не рискнул именно из-за объёма.
Читайте также: