Intereting Posts
Обнаружение тегов NFC не вызывает onNewIntent, и он запускает из основной активности Плавающая кнопка действия в действии – как привязать к recyclerview во фрагменте? Компактные альтернативы Java ArrayList <String> Как выталкивать папки с компьютера на SD-карту с помощью оболочки adb Недопустимое исключение аргумента в диалоговом окне андроида Как принудительно установить приложение Android в среду разработки? Ошибка построения несоответствия архитектуры процессора Удалите интервал между элементами в RecyclerView android FragmentManager.getFragmens (). Size () не уменьшается после FragmentTransaction.remove (фрагмент) Разработка Android-игр в C # Лучший способ создать нижнюю панель инструментов в Android. Android bluetooth ACTION_DISCOVERY_FINISHED не работает WebView внутри ViewPager или ScrollView – странная ошибка рендеринга на Android 3.0+ Использование сканера отпечатков пальцев для Android для приложений Ошибки компоновщика в Android NDK (неопределенная ссылка на `__cxa_end_cleanup ')

Что такое com.google.android.gms.persistent и почему он всегда использует CPU?

Даже когда ничего не происходит, этот системный процесс, похоже, использует устойчивые 1-2% процессора. В течение дня это истощает значительное количество батареи, даже когда устройство не использовалось ни для чего. Мне не удалось сопоставить его с другими приложениями, потому что даже когда они использовали только несколько секунд времени процессора каждый в течение нескольких часов, этот процесс использует минуты.

Кажется, что он работает, даже если я:

  • Отключить WiFi
  • Выключить BlueTooth
  • Отключить службы определения местоположения
  • Отключите все, кроме минимальной синхронизации (например, GMail)

Я написал небольшое тестовое приложение, которое отслеживает /proc/<pid>/stat каждые 10 мс и записывает в logcat в любое время com.google.android.gms.persistent , надеясь, что он напишет что-то для логарифма, который будет определять, какое приложение или другое Служба использует «постоянные» для своих услуг. Я не вижу многого, но вот несколько вещей, которые я видел:

 InputReader: Reconfiguring input devices. changes=0x00000010 WifiService: acquireWifiLockLocked: WifiLock{NlpWifiLock type=2 binder=android.os.BinderProxy@f73f0b8} LocationFilter: Forcing stable location. Original location:Location[... ConnectivityService: notifyType CAP_CHANGED for NetworkAgentInfo [WIFI () - 246] 

Каждая строка выше была в другое время, непосредственно предшествующее (в течение 10 мс) сообщение журнала, определяющее использование ЦП com.google.android.gms.persistent но без какой-либо четкой индикации того, связано ли это. К сожалению, ни один из вышеприведенных отчетов не превышает 10 мс времени процессора, и поэтому – даже если точное определение того, что использует «постоянный», представляет собой лишь небольшую часть используемого времени процессора.

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

Что использует этот процесс? Я ищу эту информацию напрямую, или для дополнительных способов я могу вывести эту информацию, подобную моим попыткам с помощью logcat.

Обновление: я искал источник (например, com.google.android.gms.persistent.java или что-то в этом роде) на https://android.googlesource.com без везения. Разве это не часть общедоступного исходного кода? Что действительно странно, так это то, что документации нет даже, например, здесь: https://android.googlesource.com/platform/frameworks/base/+/33fca8e/docs/html/reference/com/google/ андроид / GMS

Обновление 2: я отключил все синхронизации в разделе «Настройки» -> «Аккаунты». Это, по-видимому, снижает загрузку процессора немного больше, и падение батареи, кажется, упало до обхода – за исключением периодически com.google.android.gms.persistent все еще, кажется, занимает пакет CPU.

Моя рабочая теория теперь заключается в том, что у нее есть Тревога, которая срабатывает примерно с 60 секундами независимо от того, нужна она или нет, и этот код проверяет синхронизацию, и если ничего не нужно синхронизировать, она отказывается от времени И позволяет CPU переходить в режим сна. Тем не менее, я на полпути не могу поверить, что такой ужасный дизайн будет использоваться, поскольку все, что просыпает процессор каждую минуту, обязательно разрядит батарею намного быстрее, даже если она просто заснет и почему будет использоваться опрос Вместо чего что-то прерывается для синхронизации в любом случае?

Насколько я могу судить (из-за того, что не смог найти его) исходный код для com.google.android.gms.persistent не является открытым исходным кодом или доступен в Интернете в любом месте. Если я ошибаюсь, я бы принял в качестве ответа на мой вопрос, любой ответ, который указывал бы на исходный код, поскольку я мог бы просмотреть его и определить для себя, почему использование ЦП.

Solutions Collecting From Web of "Что такое com.google.android.gms.persistent и почему он всегда использует CPU?"

По словам Дэвида Биссона :

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

Вредоносная программа, известная под именем «Android.Xiny.60», родом из той же семьи, что и Android.Xiny.19.origin, которая сделала свой большой вход еще в январе 2016 года.

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

Зараженные андроид игры

Как сообщает Softpedia, последним версиям Xiny-трояна не нужно обманывать пользователей, предоставляя им admin privilges, а вместо этого развертывать эксплоиты для root-устройства.

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

Например, Xiny может внедрять вредоносные процессы в приложения чата, отслеживать разговоры и даже отправлять сообщения без разрешения пользователя. Кроме того, вредоносное ПО предназначено для банковских приложений и может отображать поддельные страницы входа, чтобы украсть имена пользователей и пароли.

Как объясняет доктор Веб в сообщении в блоге:

«Троян запускает модуль igpi (Android.Xiny.61), который использует функцию ptrace, чтобы внедрить исполняемую библиотеку Linux igpld.so (Android.Xiny.62) в системные процессы Google Play (com.android.vending) и Службы Google Play (com.google.android.gms, co.google.android.gms.persistent). "

Вредоносная программа может также внедрить Android.Xiny.62 в zygote, важный процесс Android, чья зараженность позволяет троянцам запускать новые приложения и дополнительные вредоносные программы. В то же время Android.Xiny.60 ждет обнаружения зарядного устройства, дома Экран для включения или выключения или нескольких других конкретных событий. Всякий раз, когда происходит одно из этих событий, троян соединяется с сервером команд и управления и отправляет всю информацию об устройстве на домашнюю базу.

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

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

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