Shutdown monitor что это за программа на андроид
А началось все с того, что вызывает меня генеральный к себе, и говорит: «Вот видишь телефон? Хочу чтобы там была кнопка, я на нее нажимаю, и у меня в ноутбуке кино включается. Нажимаю другую – музыка играет.» И еще чего-то много наговорил, уж не помню. «Задача понятна? Выполняй!» Вот уж не знаю, с чего такая потребность у него возникла. То ли звезды не под тем углом встали, то ли сон какой приснился. Короче, не поймешь этих богатых… Ну да ладно.
Поначалу полез рыться в Гугл в поисках подходящей программы, а потом подумал – а какого черта? Напишу сам. Тем более, что задача не показалась сложной, да и “зов кода” уже давал о себе знать (этакая профессиональная it-ломка). Вот и решил соединить Windows и Android собственными силами.
То, что он просил, я сделал за пару дней. Но здесь я не хочу городить много кода, проверок и обработок исключений и т.п. Статья скорее предназначена для самых маленьких, как основа, опираясь на которую, можно построить что-то более масштабное. Ни в коем случае не претендую на оригинальность, явно кто-то что-то подобное писал, я просто предлагаю свой вариант. В общем, всем, кому интересно, посвящается.
Что мы имеем
Значит так. С одной стороны, у нас телефон с Android на борту, с другой — Windows с установленными программами, притом некоторые из этих программ нам надо запускать, подав команду с телефона.
Телефон и компьютер свяжем через локальную сеть, тут без вариантов (ну не смски же посылать). Таким образом, будем писать две программы. Первая — это сервер, работающий на компьютере, задача этой программы — открыть и слушать порт. Если на этот порт падает что-то полезное, то выполнить заданное нами действие. Вторая программа — это клиент, запущенный на телефоне, ее задача обработать действия пользователя, подключиться к серверу и передать информацию.
Немного о сокетах
Тема программирование сокетов до того уже заезженная, что и особо говорить нечего. Но все же в двух словах, для тех, кто не любит ходить по ссылкам.
Сервер. Начинаем хулиганить
Итак, приступим. В Visual Studio создаем новое Windows Form приложением с именем, скажем, FunnyJoke. Открываем файл Program.cs и удаляем весь код в теле функции Main. Этот код инициализирует главную форму приложения, нашему серверу никакие окна не нужны, он должен сидеть тихо мирно и ждать команд.
В классе Program определим следующие переменные:
Я взял порт 10000, именно его и будет слушать наш сервер, вместо ip адреса задал 0.0.0.0 это говорит о том, что будут обрабатываться все доступные сетевые интерфейсы. Это не совсем правильно, но для начала сойдет. Далее я определил три константы, которые задают коды команд, приходящие от клиента. В начале проекта не забываем подключить:
Теперь, вместо удаленного кода в функции Main вставляем следующий:
Пример хорошо комментирован. Но все же поясню. Сначала создаем локальную конечную точку и ассоциируем ее с нашим ip адресом и портом. Затем, определяем основной сокет, связываем его с конечной точкой, и переводим в режим прослушивания. После этого входим в бесконечный цикл, и начиная со строки:
наш сервер переходит в состояние ожидания соединения. При удачном соединении создастся новый экземпляр Socket, посредствам которого мы и будем общаться с нашим клиентом. После того как соединение установлено начинаем читать данные:
Строка, приходящая от клиента, имеет кодировку символов UTF-8, поэтому прежде чем показать ее несчастному пользователю, необходимо привести ее к стандартному виду.
С сервером, пожалуй, все. Исходный код проекта я прикреплю в конце статьи.
Клиент
Тут стоит обратить внимание на поле edIPaddress, в нем стоит фильтрация на ввод только цифр и. (точка), так-как поле предназначено для ввода ip адреса. Надо сказать, что это единственная проверка на правильность введенных данных, все остальное остается на совести пользователя. Еще хочу cказать о кнопке btnPowerOff ее состояние отслеживает селектор, и в зависимости от того нажата она или нет меняет изображение (иначе, не понятно произошло ли нажатие, кнопка будет выглядеть как статичная картинка). Вот код селектора button_img.xml:
Соответственно в ресурсах должны быть две картинки одна для нажатого состояния, другая для обычного. Получится вот такой экран:
На этом с разметкой закончим. Переходим к файлу MainActivity.java. В первую очередь, так же, как и в сервере, определяем коды команд и некоторые переменные:
Теперь вернемся к нашему обработчику нажатия кнопок, создадим экземпляр класса SenderThread, затем в зависимости от того какая кнопка была нажата инициализируем переменную codeCommand, по ней наш поток будет определять что мы от него хотим. И наконец, активируем, вызвав метод execute().
Немного поправим манифест приложения, дадим разрешение на использование сети и wi-fi, без этого ничего работать не будет:
Социальная сеть Facebook является сегодня самой популярной в мире, поэтому неудивительно, что соответствующее мобильное приложение установлено у огромного количества пользователей. Мобильный клиент позволяет вам получать уведомления о новых лайках, постить фотки своей еды и всегда оставаться на связи с друзьями. Однако взамен это приложение потребляет огромное количество системных ресурсов и значительно уменьшает срок работы мобильного гаджета от батареи. Согласно ежегодному отчёту App Report 2015 AVG Android App Report, именно мобильный клиент Facebook занимает верхние строчки в хит-параде самых прожорливых программ на платформе Android.
Альтернатива. Используйте мобильную версию Facebook в любом современном браузере. Функциональность отличается ненамного, зато отсутствуют раздражающие уведомления и стремительно тающая батарея.
The Weather Channel и другие погодные приложения
The Weather Channel — отличный пример того, как на самой простой функции — отображении прогноза погоды — разработчики умудряются выстроить целый мегакомбайн. Здесь вы увидите и анимированные обои, и метеорологические карты, и букет интерактивных виджетов, и бог знает что ещё. Всё это хозяйство сидит в оперативной памяти устройства, каждые пять минут стучится в интернет и, разумеется, самым бессовестным образом съедает заряд вашей батареи.
Альтернатива. Выгляните в окошко — вы получите гораздо более надёжную информацию, чем то, что показывает виджет рабочего стола. Если необходим прогноз, то Google предоставит вам самое надёжное предсказание на неделю вперёд.
AntiVirus FREE и другие антивирусные программы
Дискуссия о том, нужны ли антивирусные программы на устройствах под управлением Android, иногда бывает довольно горячей. Я придерживаюсь мнения, что если вы не получаете root-права на устройстве и не устанавливаете взломанные программы из сторонних сомнительных источников, то антивирус вам не нужен. Компания Google бдительно следит за содержимым своего магазина и моментально удаляет из него все потенциально опасные элементы, поэтому всегда активный мониторинг антивируса будет только зря тормозить ваш смартфон или планшет.
Альтернатива. Если возникли всё-таки сомнения в здоровье гаджета, то установите антивирус, просканируйте, а затем удалите его.
Clean Master и другие оптимизаторы системы
Вера в чудеса является самой главной движущей силой для распространения разных «очистителей» и «оптимизаторов». Мол, сотни лучших программистов Google не смогли довести свою систему до ума, а вот этот изобретатель-одиночка взял и сделал! Спешим вас расстроить: большинство подобных приложений либо вообще ничего не делают, либо наносят только вред. Очистить кэш, удалить остатки старых программ можно и встроенными системными инструментами. Очистка же памяти на самом деле только замедляет запуск программ и работу Android вместо обещанного создателями утилит ускорения системы.
Альтернатива. Используйте имеющиеся в Android инструменты для очистки кэша приложений. Забудьте об оптимизации памяти.
Дефолтный браузер
Некоторые производители и разработчики сторонних прошивок снабжают свои творения специальными версиями браузера. Как правило, в них намертво вшиты ссылки на сайты рекламодателей и другой ненужный вам контент. Кроме этого, никто не может поручиться, что такой браузер не сливает вашу информацию налево. Лучше никогда не использовать подобную программу и вообще, если это возможно, удалить её из системы.
Альтернатива. Для Android существуют десятки хороших браузеров, но самым надёжным и быстрым является, несомненно, Google Chrome. Он функционален, обладает поддержкой самых современных веб-технологий, умеет экономить мобильный трафик и обладает простым и понятным интерфейсом.
Преимущества программы
Рассматривая преимущество мобильных устройств Андроид, хочется отметить новую функцию, которая стала доступна во многих средне ценовых флагманах. Эта уникальная опция ANT Hal Service, отвечающая за работу беспроводной радио связи устройств с другими телефонами, которые функционируют по аналогичной технологии.
Разработчики программы создали специальную опцию для использования на умных спортивных устройствах. К ним следует относить: шагомеры, вело компьютеры, пульсометры и другие. На многих современных телефонах встроенная технология разработана специалистами компании Dynastream Innovations и используется как беспроводная сеть, с помощью которой можно передавать данные и получать информацию с других датчиков.
Нередко эту опцию применяют в спорте и фитнесе. Современные люди могут передавать на свой гаджет с таких датчиков информацию о сердечном ритме, активности, весе, температуре, шагомере.
В случае отсутствия надобности утилиты, ее можно легко отключить или удалить из мобильного устройства с помощью root-доступа. При помощи других приложений, например, Titanium Backup, можно выключить программу на мобильном устройстве.
Однако, лучше не удалять программу, поскольку она имеет множество преимуществ:
- Работает в фоновом режиме, не влияет на память устройства.
- При подключении программы потребляет заряд в наименьшем количестве.
Основная особенность технологии заключается в низком потреблении энергии. Таким образом, при включении программа не повлияет на заряд и память вашего мобильного устройства.
В качестве принимающего устройства любой пользователь может использовать свой гаджет со специальным оснащенным модулем, который позволит принимать и обрабатывать данные в рамках существующей технологии ANT.
С помощью его наличия любой желающий сможет получать спортивную информацию и отображать ее в удобном виде на своем гаджете.
Реверс малвари
Существует миф, что спецслужбы могут отслеживать местоположение даже выключенного мобильника. Новый троян под Android 5+ в каком-то смысле реализует эту концепцию.
Специалисты из антивирусной компании AVG рассказывают о зловреде, который продолжает работать даже когда телефон кажется выключенным. Получив рутовые права в системе, он перехватывает вызов на выключение аппарата, затем показывает фирменную анимацию выключения телефона и гасит экран. Пользователь думает, что телефон выключен, но на самом деле он работает: троян может осуществлять исходящие вызовы, делать фотографии и осуществлять другие поставленные задачи.
Под Android при нажатии кнопки Power активируется функция interceptKeyBeforeQueueing, которая вызывает соответствующий процесс.
Когда кнопка отпущена, активируется intereceptPowerKeyUp.
На экране возникает диалог, предоставляя выбор из нескольких действий.
Если выбрать опцию выключения аппарата, вызывается mWindowManagerFuncs.shutdown.
И вот здесь после обращения к функции ShutDownThread.shutdown непосредственно инициируется процедура отключения питания на физическом уровне.
Вредоносная программа запускает процесс в фоновом режиме и перехватывает вызовы к mWindowManagerFuncs. Таким образом, когда пользователь выбирает опцию отключения энергии, вместо системного процесса запускается анимация, после чего экран отключается, но аппарат продолжает работу.
Троян обнаружили в китайских магазинах приложений и к настоящему моменту заразил около 10 000 устройств.
Читайте также: