Где в сяоми автозапуск

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

Так подскажите пожалуйста как включить автозапуск программно, а то пользователь никогда так не сделает.

Shivam Nagpal 8 Дек 2015 в 09:11

Вы не сможете сделать это из кода до тех пор, пока не появится API от xiaomi, который даст вам доступ к этой функциональности. Я предполагаю, что менеджер автозапуска — это приложение (с привилегиями системного приложения, поскольку часть xiaomi изменила ОС), поэтому это невозможно. С другой стороны, если устройство рутировано, вы можете отключить диспетчер автозапуска.

8 Дек 2015 в 09:17
Как WhatsApp, Facebook и многие другие приложения делают это?
Shivam Nagpal
9 Дек 2015 в 10:40

Я предполагаю, что у них есть связи с Xiaomi, чтобы быть в белом списке. Но это всего лишь предположение.

Скрытые нехорошие настройки автозапуска MIUI. Я отключил от греха подальше.

9 Дек 2015 в 20:59
11 Май 2016 в 09:20

: Xiaomi по умолчанию добавляет в белый список популярные приложения, такие как Facebook, Whatsapp, Messenger. Другие, такие как мы, должны сообщить пользователю, чтобы он включил его вручную.

13 Сен 2016 в 21:51

7 ответов

Вы не можете включить автоматический запуск напрямую, но вы можете перенаправить пользователя на экран настройки автоматического запуска и попросить пользователя включить его для вашего приложения. Используйте приведенное ниже решение для телефонов xiaomi, oppo, vivo, letv, honor, asus, nokia, huawei. Экран автозапуска будет запущен, если он существует.

try < val intent = Intent() val manufacturer = Build.MANUFACTURER when < «xiaomi».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.miui.securitycenter», «com.miui.permcenter.autostart.AutoStartManagementActivity» ) >»oppo».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.coloros.safecenter», «com.coloros.safecenter.permission.startup.StartupAppListActivity» ) >»vivo».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.vivo.permissionmanager», «com.vivo.permissionmanager.activity.BgStartUpManagerActivity» ) >»letv».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.letv.android.letvsafe», «com.letv.android.letvsafe.AutobootManageActivity» ) >»honor».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.huawei.systemmanager», «com.huawei.systemmanager.optimize.process.ProtectActivity» ) >»asus».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.asus.mobilemanager», «com.asus.mobilemanager.powersaver.PowerSaverSettings» ) >»nokia».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.evenwell.powersaving.g3», «com.evenwell.powersaving.g3.exception.PowerSaverExceptionActivity» ) >»huawei».equals(manufacturer, ignoreCase = true) -> < intent.component = ComponentName( «com.huawei.systemmanager», «com.huawei.systemmanager.startupmgr.ui.StartupNormalAppListActivity» ) >> startActivity(intent) > catch (e: Exception) < /*Timber.e(e)*/ >

Quvonchbek Y ответил

Как добавить или убрать любое приложение в автозапуск на MIUI 12 Автозапуск приложений на Xiaomi

ONVETI 11 Май 2021 в 10:12
Имя активности для vivo неверно. возможно, они меняют его от версии к версии.
desidigitalnomad
5 Авг 2017 в 08:49

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

String manufacturer = «xiaomi»; if(manufacturer.equalsIgnoreCase(android.os.Build.MANUFACTURER)) < //this will open auto start screen where user can enable permission for your app Intent intent = new Intent(); intent.setComponent(new ComponentName(«com.miui.securitycenter», «com.miui.permcenter.autostart.AutoStartManagementActivity»)); startActivity(intent); >
Mohit Mathur 19 Янв 2017 в 12:48

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

M.Yogeshwaran
11 Сен 2017 в 15:39
Mohit Mathur
14 Сен 2017 в 09:11
Как я могу звонить только один раз каждый раз спрашивая разрешения
M.Yogeshwaran
14 Сен 2017 в 12:47
22 Мар 2018 в 09:09

Отключить слежение на Андроид Xiaomi

Jaffar Raza 22 Янв 2019 в 09:01

Вы можете попробовать это:

if («xiaomi».equalsIgnoreCase(str)) < intent.setComponent(new ComponentName(«com.miui.securitycenter», «com.miui.permcenter.autostart.AutoStartManagementActivity»)); >else if («oppo».equalsIgnoreCase(str)) < intent.setComponent(new ComponentName(«com.coloros.safecenter», «com.coloros.safecenter.permission.startup.StartupAppListActivity»)); >else if («vivo».equalsIgnoreCase(str))
Daniele Ricci 30 Июл 2018 в 19:42

Мне нужно перенаправить на экран диспетчера автозапуска в естественных условиях, «com.iqoo.secure.MainGuideActivity», он останавливается на полпути

user3069590
31 Окт 2017 в 16:26

Я наткнулся на эту библиотеку. Автозапуск. Это библиотека автозапуска для разных производителей устройств.

В прошлый раз, когда я использовал его, он поддерживал устройства Xiaomi и Letv. Я не могу дать вам примеры кода, но я надеюсь, что это поможет кому-то, кто наткнется на это

glenn ferns 9 Янв 2019 в 10:41

if (Build.MANUFACTURER.toLowerCase().contains(«xiaomi») !Build.MODEL.toLowerCase().contains(«mi a»)) < //intent >
javisilox 16 Янв 2019 в 15:32

gist.github.com/Muyangmin/e8ec1002c930d8df3df46b306d03315d может решить описанную вами проблему более общим и точным способом. (Проверено на: MI A2 lite, Redmi 5 plus)

Источник: question-it.com

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

У меня есть сервис в моем приложении, который должен постоянно работать в фоновом режиме, и на всех устройствах он работает отлично, кроме Xiaomi, я прочитал некоторые, где нам нужно включить автоматический запуск в настройках приложения, чтобы поддерживать работу. Итак, пожалуйста, скажите мне, как o разрешить автозапуск программно, потому что пользователь никогда этого не сделает. Любая помощь будет оценена.

Shivam Nagpal 08 дек. 2015, в 07:36
Поделиться

вы не сможете сделать это из кода до тех пор, пока не появится API от xiaomi, который даст вам доступ к этой функциональности. Я предполагаю, что диспетчер автозапуска — это приложение (с привилегиями системного приложения, так как часть xiaomi модифицировала ОС), следовательно, это невозможно. С другой стороны, если устройство рутовано, вы можете отключить диспетчер автозапуска.

Nishant. 08 дек. 2015, в 06:17
Shivam Nagpal 09 дек. 2015, в 07:40

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

Nishant. 09 дек. 2015, в 17:59
Pararth 11 май 2016, в 06:20
venkat 13 сен. 2016, в 18:51

Проверьте этот stackoverflow.com/questions/47426313/… , у этого ответа есть почти все Интенты для телефонов большинства компаний.

Sachin Varma 16 фев. 2018, в 06:13
Показать ещё 4 комментария
Поделиться:

7 ответов

Вы не можете включить автоматический запуск напрямую, но вы можете перенаправить пользователя на экран настройки автоматического запуска и попросить пользователя включить его для вашего приложения. Используйте приведенное ниже решение для телефонов xiaomi, oppo и vivo. Экран автозапуска будет запущен, если он существует.

try < Intent intent = new Intent(); String manufacturer = android.os.Build.MANUFACTURER; if («xiaomi».equalsIgnoreCase(manufacturer)) < intent.setComponent(new ComponentName(«com.miui.securitycenter», «com.miui.permcenter.autostart.AutoStartManagementActivity»)); >else if («oppo».equalsIgnoreCase(manufacturer)) < intent.setComponent(new ComponentName(«com.coloros.safecenter», «com.coloros.safecenter.permission.startup.StartupAppListActivity»)); >else if («vivo».equalsIgnoreCase(manufacturer)) < intent.setComponent(new ComponentName(«com.vivo.permissionmanager», «com.vivo.permissionmanager.activity.BgStartUpManagerActivity»)); >List list = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); if (list.size() > 0) < context.startActivity(intent); >> catch (Exception e)
rajkumar 29 июнь 2017, в 08:13
Поделиться
название активности для vivo неверно. может быть, они меняют его с версии на версию.

desidigitalnomad 05 авг. 2017, в 05:49
В оппозиции леденец на палочке работает, но зефир не работает
user3069590 31 окт. 2017, в 14:13

Попробуй. это работает для меня. Он откроет экран, чтобы включить автозапуск. Но если вы попытаетесь отключить оттуда, оно закроет приложение. Я придумываю решение для этого.

До этого вы можете использовать это как решение.

Как добавить трек в музыку Xiaomi

String manufacturer = «xiaomi»; if(manufacturer.equalsIgnoreCase(android.os.Build.MANUFACTURER)) < //this will open auto start screen where user can enable permission for your app Intent intent = new Intent(); intent.setComponent(new ComponentName(«com.miui.securitycenter», «com.miui.permcenter.autostart.AutoStartManagementActivity»)); startActivity(intent); >
Mohit Mathur 19 янв. 2017, в 10:35
Поделиться
спасибо, работал для меня
Pratswinz 19 янв. 2017, в 09:49

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

M.Yogeshwaran 11 сен. 2017, в 12:39
Mohit Mathur 14 сен. 2017, в 06:11
как я могу позвонить мне только один раз каждый раз спрашивает разрешения
M.Yogeshwaran 14 сен.

2017, в 09:47
Вы также можете проверить эту ссылку stackoverflow.com/questions/41277671/…
Govind 22 март 2018, в 06:09
Показать ещё 3 комментария

Вы можете попробовать это:

if («xiaomi».equalsIgnoreCase(str)) < intent.setComponent(new ComponentName(«com.miui.securitycenter», «com.miui.permcenter.autostart.AutoStartManagementActivity»)); >else if («oppo».equalsIgnoreCase(str)) < intent.setComponent(new ComponentName(«com.coloros.safecenter», «com.coloros.safecenter.permission.startup.StartupAppListActivity»)); >else if («vivo».equalsIgnoreCase(str))
sreejith 07 авг. 2017, в 14:08
Поделиться

мне нужно перенаправить на экран менеджера автозапуска в естественных условиях, «com.iqoo.secure.MainGuideActivity» он останавливается на полпути

user3069590 31 окт. 2017, в 13:26

Источник: overcoder.net

Как отключить автозапуск приложений на Android

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

Рассмотрим несколько способов, позволяющих отключить программы, которые постоянно работают в фоне.

С помощью системных инструментов

Для того, чтобы отключить автозапуск приложений, сделайте следующее:

Шаг 1. Откройте настройки Android.

Шаг 2. Перейдите в раздел «Приложения».

Шаг 3. Выберите пункт «Разрешения».

Шаг 4. Откройте «Автозапуск».

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

С помощью приложения Greenify

Если системных инструментов недостаточно или же вы желаете ограничить фоновую активность приложений, скачайте и установите программу Greenify. Утилита эффективна на смартфонах без root-доступа и работает на любой версии Android.

Установить и использовать программу совсем несложно:

Шаг 1. Найдите Greenify в Google Play и нажмите кнопку «Установить».

Шаг 2. Дождитесь окончания инсталляции и запустите приложение. Для этого, нажмите кнопку «Открыть».

Шаг 3. Откроется приветственное окно утилиты. Нажмите «Далее» для продолжения.

Шаг 4. На устройствах с root-доступом и без него программа использует отличные алгоритмы работы. Выберите нужный пункт и нажмите «Далее».

Шаг 5. Для правильной работы Greenify ему необходимо разрешение на доступ к данным об использовании приложений. Нажмите кнопку «Предоставить разрешение».

Шаг 6. В списке приложений отыщите «Greenify» и коснитесь его.

Шаг 7. Активируйте переключатель «Доступ к истории использования».

Шаг 8. Коснитесь кнопки «Закончить», чтобы перейти к работе с программой.

Шаг 9. Нажмите на «+», чтобы добавить программы, фоновую активность которых Greenify будет ограничивать.

Шаг 10. Выберите «Показать другие приложения».

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

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

Обратите внимание! В настройках программы можно установить автоматическое ограничение фоновой активности.

Использование второго рабочего пространства

Операционная система Android, начиная с версии 7.1 Nougat поддерживает возможность подключения двух рабочих пространств. Это очень удобно, если один набор приложений вам нужен для работы, а другой – для повседневного использования. При этом, часть программ можно «заморозить», когда они не нужны. В таком случае, они не будут расходовать оперативную память и ресурсы процессора.

Обратите внимание! Некоторые производители смартфонов реализовали такую возможность на Android 6.0 Marshmallow.

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

Как перепрошить Xiaomi без компьютера

Коротко рассмотрим, как подключить рабочий профиль с помощью программы Island:

Шаг 1. Найдите Island в Google Play и нажмите кнопку «Установить».

Обратите внимание! Island работает на смартфонах с Android 7.0 и выше.

Шаг 2. На экране появится приветственное окно. Нажмите «Accept», чтобы принять предлагаемые условия.

Шаг 3. Нажмите «Принять и продолжить», чтобы разрешить создание рабочего профиля.

Шаг 4. Дождитесь, пока рабочий профиль будет настроен.

Шаг 5. Нажмите «Далее» для продолжения.

Шаг 6. Island – это ваш небольшой остров в системе Android. Здесь есть своя копия сервисов Google Play, магазина приложений и прочих системных приложений. Устанавливайте программы в рабочий профиль прямо из «Google Play Маркет», который находится в разделе «Island».

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

Шаг 8. Замороженное приложение в Island подписано синим цветом. Нажмите на три точки, для того увидеть дополнительные параметры.

Шаг 9. Поскольку приложение Greenify глубоко интегрировано в Island, они могут работать в паре. Нажмите «Auto-freeze with Greenify», чтобы автоматически замораживать выделенное приложение.

Источник: setphone.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
Китай Покупай