Désactiver le démarrage automatique et restreindre l'exécution de fond [duplicata] -- applications domaine et processes domaine et background domaine et auto-start domain android en relation problème

Disable autostart on boot and restrict background execution [duplicate]



2
vote

problème

français
Cette question a déjà des réponses ici :
Comment empêcher les applications d'exécuter au démarrage? [Dupliquer] (8 réponses)
Comment identifier et modifier les applications définies comme Articles de démarrage [duplicata] (2 réponses)
fermé il y a 1 an .

Y a-t-il un moyen de désactiver les applications AutoStart au démarrage? J'ai besoin de désactiver certains d'entre eux (pas tous) comme Facebook, etc. pour obtenir du temps de démarrage plus rapide. Je demande comment faire cela sur Android 9.0.

langue Anglaise

Is there any way to disable autostart apps at boot time? I need to disable some of them (not all) like Facebook, etc to get quicker boot time. I'm asking how to do this on Android 9.0.

           
 
 

Liste de réponses

9
 
vote
vote
Meilleure réponse
 

sans entrer dans les détails, que l'on puisse arrêter ou non que l'on puisse arrêter ou non les applications d'autostarting, et que pourraient être les conséquences comme discutées dans une grande réponse, voici mes solutions simples qui peuvent fonctionner sans aucune application tierce, au moins sur Android. Pie.

Solution racine:

Applications Utilisez BroadcastRceivers Pour écouter Broadcast Action_boot_compled afin qu'ils puissent courir au démarrage. Le récepteur de diffusion est un composant d'application pouvant être désactivé avec des privilèges root.

en utilisant Gestionnaire de packages Lister tous les récepteurs de diffusion écoutant pour boot_completted :

~# pm query-receivers --components -a android.intent.action.BOOT_COMPLETED

Il donnera une liste de récepteurs de diffusion au format package_name/component_name . Voir dumpsys activity broadcast-stats et /system/bin/sh /storage/emulated/0/test.sh 0 pour plus de détails.

Maintenant pour désactiver un composant:

/system/bin/sh /storage/emulated/0/test.sh 1

Il existe des applications telles que /system/bin/sh /storage/emulated/0/test.sh 2 ( com.elsederferfer.android.autOstarts ) et /system/bin/sh /storage/emulated/0/test.sh 3 ( ( EU.THEDARKEN.SDM < / em>) qui peuvent faire la même chose pour vous. Fichier /system/bin/sh /storage/emulated/0/test.sh 4 peut également être modifié directement pour désactiver les applications ou leurs composants, mais ce n'est pas recommandé.
Il est possible de désactiver plusieurs récepteurs de diffusion d'une application, et un seul récepteur peut également éventuellement écouter plusieurs types de Événements de diffusion .

Solution non root: (non universelle)

Pour recevoir /system/bin/sh /storage/emulated/0/test.sh 5 , les applications ont besoin android.permission.receive_boot_completé qui est un autorisation normale et donc ne peut pas être révoqué par l'utilisateur.

Cependant, il y a un cadre caché Gestion de permission, nommé /system/bin/sh /storage/emulated/0/test.sh 6 qui fournit un contrôle légèrement plus fin-grain des opérations (de type permission). op_boot_commeted est un Parmi ceux-ci, mais ce n'est pas une partie de AOSP, ajouté uniquement par des roms personnalisées comme des lignesages. Si vous êtes sur l'une de ces roms, vous pouvez contrôler le comportement de l'Autostart via /system/bin/sh /storage/emulated/0/test.sh 7 :

/system/bin/sh /storage/emulated/0/test.sh 8

Maintenant, l'application ne sera pas autorisée à recevoir BOOT_COMPLETED Il y a des applications comme /system/bin/sh /storage/emulated/0/test.sh 9 ( rikka.appops ) qui peuvent faire la même chose pour vous. Certaines roms personnalisées ont une frontière intégrée aux APPOPs avec des noms différents tels que Confidential Guard , autostart Manager etc.

Veuillez noter que Approx :

n'est généralement pas destiné aux développeurs d'applications tiers; La plupart des fonctionnalités ne sont disponibles que pour les applications système

Donc, son utilisation sans racine peut être refusée ou devenir plus difficile dans les prochaines versions Android.

Les deux méthodes ci-dessus peuvent arrêter les applications de partir du démarrage uniquement. Une application peut également écouter pour d'autres événements de diffusion et il peut continuer à redémarrer s'il est tué ou exécuté en arrière-plan en continu (en tant que service) s'il est conçu pour l'être. Voir /data/local/tmp0 pour plus de détails.

Une approche légèrement différente serait d'arrêter les applications de l'exécution en arrière-plan en utilisant op_run_in_background (introduit dans nougat) et / ou /data/local/tmp1 (introduit dans la PIE) qui font partie de AOSP: /data/local/tmp2

Ils n'ont pas une autorisation manifeste équivalente, mais il y a un autorisation expérimentale avec le même nom.

 

Without getting into the details whether or not one should stop autostarting apps, and what could be the consequences as discussed in a plenty of other answers, here are my simple solutions which may work without any third party apps, at least on Android Pie.

ROOT SOLUTION:

Apps use BroadcastRceivers to listen for broadcast ACTION_BOOT_COMPLETED so that they can run on boot. Broadcast receiver is an app component that can be disabled with root privileges.

Using Package Manager list all broadcast receivers listening for BOOT_COMPLETED:

~# pm query-receivers --components -a android.intent.action.BOOT_COMPLETED 

It will give a list of broadcast receivers in format package_name/component_name. See dumpsys activity broadcast-stats and dumpsys activity broadcasts for more details.

Now to disable a component:

~# pm disable <package/component> 

There are apps like Autostarts (com.elsdoerfer.android.autostarts) and SD Maid (eu.thedarken.sdm) which can do same for you. File /data/system/users/0/package-restrictions.xml can also be edited directly to disable apps or their components, but it's not recommended.
It's possible to disable multiple broadcast receivers of an app, and a single receiver can also possibly listen to multiple types of broadcast events.

NON-ROOT SOLUTION: (non-universal)

In order to receive android.intent.action.BOOT_COMPLETED, apps need android.permission.RECEIVE_BOOT_COMPLETED which is a normal permission and hence can't be revoked by user.

However there is a hidden permission management framework, named AppOps that provides a slightly more fine-grained control of (permission-like) operations. OP_BOOT_COMPLETED is one of those but it's not a part of AOSP, only added by some custom ROMs like LineageOS. If you are on one of such ROMs, you can control the autostart behavior through adb shell:

~$ appops set <package> BOOT_COMPLETED deny 

Now the app won't be allowed to receive BOOT_COMPLETED broadcast. There are apps like App Ops (rikka.appops) which can do same for you. Some custom ROMs have built-in front-ends to AppOps with different names like Privacy Guard, AutoStart Manager etc.

Please note that AppOps:

is not generally intended for third party application developers; most features are only available to system applications

So its usage without root may be disallowed or get harder in next Android releases.


Both of the above methods can stop apps from starting on boot only. An app can listen for some other broadcast events too and it can keep on restarting if killed, or run in background continuously (as a service) if it's designed to be so. See dumpsys activity services for more details.

A slightly different approach would be to stop apps from running in background by using OP_RUN_IN_BACKGROUND (introduced in Nougat) and/or RUN_ANY_IN_BACKGROUND (introduced in Pie) which are part of AOSP:

~$ appops set <package> RUN_IN_BACKGROUND deny 

They don't have an equivalent manifest permission, but there is an experimental permission with same name.

 
 
       
       
0
 
vote

Certains périphériques nécessitent un accès root pour gérer les autorisations de démarrage automatique ... Cependant, Android 5.1 permet de suivre les paramètres de démarrage automatique dans la sécurité.

  • Paramètres ouverts et GT; Sécurité
    Security

  • Paramètres de démarrage automatique ouvert
    auto

  • Désactiver l'application du début automatique
    désactiver

Cette option doit être disponible sur tout système avec APPOPPS

aussi sinon sur Android avec ces paramètres

  • Paramètres ouverts

  • Open Apps

  • Ouvrez l'application souhaitée

  • Sélectionner des autorisations

  • Désactiver la permission de démarrage automatique

 

Some devices require root access to manage auto start permissions... However Android 5.1 Allows this via Auto Start settings in Security.

  • Open Settings > Security
    security

  • Open Auto Start Settings
    auto

  • Disable the app from Auto Starting
    disable

This option should be available on any system with AppOpps

Also If Not On Android with these settings

  • Open Settings

  • Open Apps

  • Open the desired Application

  • Select Permissions

  • Disable Auto-start permission

 
 
         
         

Questions connexes

0  Il est préférable de bloquer les applications AutoStart ou de les laisser courir au démarrage?  ( Best to block autostart apps or let them run at boot time ) 
Lorsque Android était toujours un robot vert bébé, je passerais à travers toutes les applications installées par l'utilisateur (NO STOYER OPLY) et désactive ...

8  Pourquoi certaines applications fonctionnent-elles même lorsque je ne les utilise pas?  ( Why do certain apps run even when i dont use them ) 
J'ai découvert que certaines applications (Amazon MP3 et stocks, par exemple) seront occasionnellement courir en arrière-plan même lorsque je ne les ouvrirai ...

45  Comment empêcher les applications d'exécuter le démarrage? [dupliquer]  ( How can i prevent applications from running on startup ) 
Cette question a déjà une réponse ici : fermée Il y a 8 ans . Dupliqué possible: Comment pu...

24  Existe-t-il un moyen de désactiver définitivement Google Maps jusqu'à ce que nécessaire?  ( Is there a way to permanently turn off google maps until needed ) 
Google Maps semble avoir une quantité insensée d'inventations enregistrées pour cela, ainsi que d'autres moyens d'être démarré. Comme il s'agit d'une jolie ...

1  Comment exécuter une application sur le démarrage en arrière-plan  ( How to run an app on startup in background ) 
Comment exécuter une application sur le démarrage en arrière-plan? Par exemple, Glasswire, Kaspersky est exécuté en démarrage, ainsi que montrez dans le plate...

0  App ne commence pas sur le démarrage de l'appareil  ( App not starting on device boot ) 
J'utilise une application d'automatisation qui devrait démarrer automatiquement sur le démarrage de périphérique (RE). Mais ça ne se passe pas. J'ai vérifié t...

8  Y a-t-il un moyen de laisser Facebook fonctionner uniquement quand je veux?  ( Is there any way to let facebook run only when i want ) 
Y a-t-il un moyen de laisser l'application Facebook ne fonctionner que lorsque je veux l'utiliser et de le fermer vraiment lorsque je n'en ai pas besoin? Je...

5  Start Services au démarrage [Duplicate]  ( Start services at boot ) 
Cette question a déjà une réponse ici : Ouvrir une application au démarrage / après le démarrage ...

2  Application de lancement sur Démarrer (même des applications de carte SD)  ( Launch app on start even sd card apps ) 
Je suis à peu près sûr (malgré les ne pas les a vus) qu'il y a quelques questions sur la gestion de l'application lorsque vous allumez le téléphone. Mais je v...

2  Android 2.2 - Comment voir les applications qui fonctionnent au démarrage [Duplicate]  ( Android 2 2 how to see applications that run at start up ) 
Cette question a déjà des réponses ici : fermé il y a 10 ans . Dupliqué possible: Comment e...




© 2022 www.demandez.top All Rights Reserved. Questions et réponses Accueil Tous les droits sont réservés