что такое sim app dialog

Sim App Dialog — что это за программа на Android (Huawei/Honor) и нужна ли она? (com.android.simappdialog)

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialogПриветствую. Обновление прошивки улучшает производительность, добавляет новые функции, настройки, технологии, программы. Однако производитель не всегда дает описание новому функционалу — сегодня речь пойдет об одном новом неизвестном приложении на смартфонах Huawei/Honor.

Sim App Dialog — что это такое?

Системное приложение работы сервисного меню SIM-карты, как правило состоящее из подобных услуг (некоторые могут быть платными):

Также теоретически Sim App Dialog может иметь отношение к переключению сим-карт, работе SMS, MMS либо другим функциям, связанным с симкой.

Может находиться в автозагрузке. Название пакета — com.android.simappdialog. По отзывам — появляется после обновления EMUI 9.1 (хуавееская прошивка). Слово simappdialog расшифровывается примерно как сим-карта / программа / диалог (взаимодействие с пользователем, отображение менюшки).

Программа появилась даже у китайских юзеров:

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Sim App Dialog — можно ли удалить/отключить?

После удаления и перезагрузки может не работать функционал SIM-карты. Но когда прошивка стоковая, загрузчик заблокирован, и опция отключения при этом присутствует — можно пробовать отключить (видимо отключение предусмотрено производителем). При наличии проблем — все вернуть обратно. При возможности, в целях страховки — лучше сделать бэкап.

Один юзер удалил давно — телефон работает в штатном режиме.

Заключение

Источник

SIM-меню: что это такое и можно ли его удалить?

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Приложение SIM-меню, позволяющее подключать различные услуги, для операционной системы Android является уже предустановленным, но морально устаревшим. Что необходимо сделать, чтобы удалить его?

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialogПриложение «SIM-Меню» на многочисленных Android-смартфонах находится в общем меню Программы (Инструменты). Мы расскажем вам о том, что из себя представляет данное приложение и как вы можете его удалить.

Android: что может SIM-Меню

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

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

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialogУдаляем SIM-Меню: вот как это делается

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

Источник

Свежий взгляд на отображение диалогов в Android

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

На картинке первая мысль читателя, который недоумевает, что можно написать про такую простую задачу как отображения диалога. Аналогично думает и менеджер: «Тут ничего сложного, наш Вася за 5 минут сделает». Я, конечно, утрирую, но на самом деле всё не так просто, как кажется на первый взгляд. Особенно если мы говорим про Android.

Итак, на дворе шёл 2019 год, а мы всё ещё не умеем нормально показывать диалоги.

Давайте всё по порядку, и начнем с постановки задачи:

Требуется показать простой диалог с текстом для подтверждения действия и кнопками «подтвердить/отмена». По нажатию на кнопку «подтвердить» — совершить действие, по кнопке «отмена» — закрыть диалог.

Решение «в лоб»

Я бы назвал этот способ джуниорским, потому что не первый раз сталкиваюсь с непониманием, почему нельзя просто использовать AlertDialog, как показано ниже:

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

На Stackoverflow вопрос по этой проблеме один из самых популярных. Если коротко, то проблема в том, что мы либо показываем диалог, либо не закрываем диалог после завершения работы активити.

Можно, конечно, вызывать dismiss у диалога в onPause или onDestroy активити, как советуют в ответе по ссылке. Но это не совсем то, что нам нужно. Мы хотим, чтобы диалог восстанавливался после поворота устройства.

Устаревший способ

До появления фрагментов в Android диалоги должны были отображаться через вызов метода активити showDialog. В этом случае активити правильно управляет жизненным циклом диалога и восстанавливает его после поворота. Создание самого диалога нужно было реализовать в коллбэке onCreateDialog:

Не очень удобно, что приходится заводить идентификатор диалога и передавать параметры через Bundle. И мы все ещё можем получить проблему «leaked window», если попытаемся отобразить диалог после вызова onDestroy у активити. Такое возможно, например, при попытке показать ошибку после асинхронной операции.

Вообще, эта проблема типична для Android, когда нужно что-то сделать после асинхронной операции, а активити или фрагмент уже уничтожен в этот момент. Наверное, поэтому MV*-паттерны более популярны в Android-сообществе, чем среди iOS-разработчиков.

Способ из документации

В Android Honeycomb появились фрагменты, и описанный выше способ устарел, а метод showDialog у активити помечен как deprecated. Нет, AlertDialog не устарел, как ошибаются многие. Просто теперь появился DialogFragment, который оборачивает объект диалога и управляет его жизненным циклом.

Родные фрагменты тоже устарели начиная с 28 API. Теперь следует использовать только реализацию из Support Library(AndroidX).

Давайте реализуем нашу задачу, как это предписывает официальная документация:

Если читателю не очень понятно, почему нельзя передавать слушатель через конструктор, то он может почитать подробнее об этом тут

Код фрагмента диалога:

Достаточно много кода получилось, не так ли?

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

И это всё ради того, чтобы диалог вовремя скрывался и правильно восстанавливался. Не удивительно, что появляются такие вопросы на Stackoverflow: один и два.

Поиск идеального решения

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

Ниже сформулированы соображения, которыми мы руководствовались:

Мы учли все вышеописанные требования и придумали способ реактивного показа диалогов, который успешно реализовали в нашей библиотеке RxPM (про нее есть отдельная статья).

Само решение не требует библиотеки и может быть сделано отдельно. Руководствуясь идеей «диалог как state» можно попробовать построить решение на основе модных ViewModel и LiveData. Но я оставлю это право за читателем, а далее речь пойдет уже о готовом решении из библиотеки.

Реактивный способ

Я покажу, как исходная задача решается в RxPM, но сначала пару слов о ключевых понятиях из библиотеки:

За состояние диалога отвечает класс DialogControl. Он имеет два параметра: первый для типа данных, которые должны отображаться в диалоге, второй — для типа результата. В нашем примере тип данных будет Unit, но это может быть сообщение пользователю или любой другой тип.

В DialogControl есть следующие методы:

В DialogControl хранится состояние — есть диалог на экране или нет (Displayed/Absent). Вот так это выглядит в коде класса:

Создадим простую PresentationModel:

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

Далее просто привязываем DialogControl во View с помощью экстеншена bindTo.
Собираем обычный AlertDialog, а результат отправляем через sendResult:

При типичном сценарии под капотом происходит примерно следующее:

Стоит отметить, что диалог закрывается и в момент, когда View отвязывается от PresentationModel. В этом случае состояние остается Displayed. Оно будет получено при следующей привязке и диалог будет восстановлен.

Как видите, необходимость в DialogFragment пропала. Диалог показывается, когда View привязывается к PresentationModel и скрывается, когда View отвязывается. За счёт того, что состояние хранится в DialogControl, который в свою очередь хранится в PresentationModel, диалог восстанавливается после поворота устройства.

Пишите диалоги правильно

Мы с вами рассмотрели несколько способов отображения диалогов. Если вы все ещё показываете первым способом, то прошу вас, не делайте больше так. Для любителей MVP ничего не остается, как использовать стандартный способ, который описан в официальной документации. К сожалению, склонность к императивности этого паттерна не позволяет сделать по-другому. Ну, а фанатам RxJava рекомендую присмотреться к реактивному способу и нашей библиотеке RxPM.

Источник

8 приложений для Android, которые нужно удалить. Они опасны

Кто бы что ни говорил, но Google Play – это помойка. Не даром её признали самым популярным источником вредоносного софта для Android. Просто пользователи в большинстве своём доверяют официальном магазину приложений Google и скачивают оттуда любое ПО без разбору. А какой ещё у них есть выбор? Ведь их всегда учили, что скачивать APK из интернета куда опаснее. В общем, это действительно так. Но остерегаться опасных приложений в Google Play нужно всегда. По крайней мере, постфактум.

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Есть как минимум 8 приложений, которые нужно удалить

Google добавила в Google Play функцию разгона загрузки приложений

Исследователи кибербезопасности из антивирусной компании McAfee обнаружили в Google Play 8 вредоносных приложений с многомиллионными загрузками. Попадая на устройства своих жертв, они скачивают получают доступ к сообщениям, а потом совершают от их имени покупки в интернете, подтверждая транзакции кодами верификации, которые приходят в виде SMS.

Вредоносные приложения для Android

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Нашли вирус? Удалите его

В основном это приложения, которые потенциально высоко востребованы пользователями. Среди них есть скины для клавиатуры, фоторедакторы, приложения для создания рингтонов и др.:

Это названия пакетов приложений, то есть что-то вроде их идентификаторов. Поскольку всё это вредоносные приложения, их создатели знают, что их будут искать и бороться с ними. Поэтому они вполне могут быть готовы к тому, чтобы менять пользовательские названия приложений, которые видим мы с вами. Но это мы не можем этого отследить. Поэтому куда надёжнее с этой точки зрения отслеживать именно идентификаторы и удалять вредоносный софт по ним.

Как найти вирус на Android

Но ведь, скажете вы, на смартфоны софт устанавливается с пользовательскими названиями. Да, это так. Поэтому вам понадобится небольшая утилита, которая позволит вам эффективно выявить весь шлаковый софт, который вы себе установили, определив название их пакетов.

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

В красном квадрате приведен пример названия пакета

Package Name Viewer удобен тем, что позволяет не просто найти нужное приложение по названию его пакета, но и при необходимости перейти в настройки для его удаления. Для этого достаточно просто нажать на иконку приложения, как вы попадёте в соответствующий раздел системы, где сможете остановить, отключить, удалить накопленные данные, отозвать привилегии или просто стереть нежелательную программу.

Как отменить подписку на Андроиде

Лучше всего приложение именно удалить. Это наиболее действенный способ защитить себя от его активности. Однако не исключено, что оно могло подписать вас на платные абонементы, поэтому для начала проверьте свою карту на предмет неизвестных списаний, а потом просмотрите список действующих подписок в Google Play:

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Если подписка оформлена через Google Play, отменить её ничего не стоит

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

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Новости, статьи и анонсы публикаций

Свободное общение и обсуждение материалов

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Так уж получилось, что смартфон стал нашим неотъемлемым спутником. При этом он достаточно компактный для того, чтобы его потерять. Учитывая стоимость современных средств связи, это всегда неприятно. Но даже если вы не можете найти свой телефон, это не значит, что пора расстраиваться и готовиться к покупке нового. На самом деле проблема решается довольно легко и есть как минимум несколько путей для этого. Думаете, что эта статья пригодится тем, кто уже потерял телефон? А вот и нет. Тем, у кого все нормально, она окажется даже более полезной, так как им будет проще принять меры и подготовится к тому, что может случиться с каждым.

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

“пользователи в большинстве своём доверяют официальном магазину приложений Google и скачивают оттуда любое ПО без разбору”, зачем судить по себе? Никто так не делает и вообще откуда этот дикий список того, что надо удалить?

«Поставьте непонятное приложение, дайте ему все возможные разрешения, чтобы удалить другое непонятное приложение». Больше похоже на заказ от конкурентов

Источник

Эмуляция и перехват SIM-команд через SIM Toolkit на Android 5.1 и ниже (CVE-2015-3843)

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

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

Перехват

Представьте, что на SIM-карте есть небольшое приложение, которое получает сообщение от оператора связи и показывает его на экране вашего Android-устройства. Если покопаться в исходниках Android, можно наткнуться на класс com.android.internal.telephony.cat.CatService, который отвечает за передачу команд между слоем радиоинтерфейса (Radio Interface Layer, RIL) и ОС.

И, наконец, broadcastCatCmdIntent() :

А вот эта часть довольно занятная:

Как злоумышленник может этим воспользоваться?

Например, использовать вредоносное приложение, не требующее дополнительных привилегий, для перехвата команд, отправляемых SIM-картой на телефон. Для этого необходимо лишь зарегистрировать receiver с действием android.intent.action.stk.command и получить STK CMD из интента.

Пример перехваченной команды:

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Это объект Parcelable в байтах. Преобразовав Hex в ASCII, вы получите сообщение SIM-карты.

Эмуляция

Однако это лишь половина уязвимости. Рассмотрим приложение, которое получает вот такое широковещательное сообщение:

что такое sim app dialog. Смотреть фото что такое sim app dialog. Смотреть картинку что такое sim app dialog. Картинка про что такое sim app dialog. Фото что такое sim app dialog

Это приложение называется SIM Toolkit (STK) и является частью стандартного Android-фреймворка. Исходники можно найти тут.

1. SIM-карта запрашивает подтверждение некоторой операции, скажем, транзакции в интернет-банке, выводя на экран телефона сообщение типа «Подтвердить транзакцию № 1234 на сумму 100 500 рублей» с двумя опциями — «ОК» и «Отмена». Код на StkDialogActivity.java:

2. Если пользователь нажмет «ОК», будет вызвана команда sendResponse(StkAppService.RES_ID_CONFIRM, true) ; в противном случае — sendResponse(StkAppService.RES_ID_CONFIRM, false) ;.

3. Что, если при помощи действия android.intent.action.stk.command создать такое же диалоговое окно с другим текстом (поддельное) и вывести его на экран за несколько секунд до генерации SIM-картой оригинального сообщения («Подтвердить транзакцию № 1234 на сумму 100 500 рублей»)? В тексте сообщения напишем «Нажмите ОК для закрытия», а кнопки оставим те же — «ОК» и «Отмена».

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

5. Итак, мы остановились на следующем:

Здесь сообщается, что «Недопустимым является отклик, который не имеет соответствующей проактивной команды и отправка которого может “сбить с толку” baseband/ril». На деле, если RIL или SIM-карта будут получать от вас неожиданные отклики, последствия могут быть непредсказуемыми. В ходе моего исследования несколько SIM-карт вышло из строя, так и не загрузив меню.

Заключение

Команда AOSP устранила эту ошибку в обновлении Android 5.1.1 для Nexus-устройств (сборка LMY48I).

Вот некоторые из моих патчей:

Автор: Руководитель отдела безопасности мобильных приложений Positive Technologies (англоязычная версия материала)

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *