Langage

Bind Énumération

Définition

Énumère les valeurs retournées par plusieurs méthodes de Bind

Cette énumération prend en charge une combinaison au niveau du bit de ses valeurs membres.

[System.Flags]
public enum Bind
[<System.Flags>]
type Bind = 
Héritage
Bind
Attributs

Champs

Nom Valeur Description
ExternalService -2147483648

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : le service lié est un service isolé, externe. Cela lie le service au package de l’application appelante, au lieu du package dans lequel le service est déclaré. Lorsque vous utilisez cet indicateur, le code du service lié s’exécute sous le nom de package et l’ID d’utilisateur de l’application appelante. Étant donné que le service doit être un processus isolé, il n’aura pas d’accès direct aux données de l’application. L’objectif de cet indicateur est de permettre aux applications de fournir des services qui sont attribués à l’application à l’aide du service, plutôt que l’application fournissant le service. Cet indicateur n’est pas compatible avec BindServiceFlags. Si vous devez utiliser BindServiceFlags, vous devez utiliser BIND_EXTERNAL_SERVICE_LONG à la place.

None 0

Spécifie qu’aucun indicateur de liaison n’est défini.

AutoCreate 1

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : créez automatiquement le service tant que la liaison existe. Notez que, bien que cela crée le service, sa méthode Service.onStartCommand(Intent, int, int) ne sera appelée qu’en raison d’un appel explicite à startService(Intent). Même sans cela, cela vous permet toujours d’accéder à l’objet de service pendant la création du service. Notez qu’avant Build.VERSION_CODES. ICE_CREAM_SANDWICH , le fait de ne pas fournir cet indicateur aurait également un impact sur l’importance du processus du service cible. Lorsqu’elle est définie, la seule façon pour qu’elle soit levée était de lier à partir d’un service auquel cas elle sera importante uniquement lorsque cette activité se trouve au premier plan. Pour atteindre ce comportement, vous devez fournir explicitement le nouvel indicateur BIND_ADJUST_WITH_ACTIVITY . Pour la compatibilité, les anciennes applications qui ne spécifient pas BIND_AUTO_CREATE ont automatiquement les indicateurs BIND_WAIVE_PRIORITY et BIND_ADJUST_WITH_ACTIVITY définies pour eux afin d’obtenir le même résultat.

DebugUnbind 2

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : incluez l’aide de débogage pour les appels incompatibles vers unbind. Lorsque cet indicateur est défini, la pile d’appels de l’appel unbindService(ServiceConnection) suivant est conservée, à imprimer si un appel non lié ultérieur est effectué. Notez que cela nécessite de conserver des informations sur la liaison effectuée pendant toute la durée de vie de l’application, ce qui entraîne une fuite. Cela ne doit être utilisé que pour le débogage.

NotForeground 4

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : n’autorisez pas cette liaison à déclencher le processus du service cible vers la priorité de planification de premier plan. Il sera toujours élevé à au moins la même priorité de mémoire que le client (afin que son processus ne soit pas tuable dans une situation où le client n’est pas killable), mais à des fins de planification du processeur, il peut être laissé en arrière-plan. Cela n’a qu’un impact dans la situation où le client de liaison est un processus de premier plan et que le service cible se trouve dans un processus en arrière-plan.

AboveClient 8

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : indique que la liaison d’application cliente à ce service considère que le service est plus important que l’application elle-même. Quand elle est définie, la plateforme essaie d’avoir le tueur hors mémoire tuer l’application avant qu’elle tue le service auquel il est lié, bien que cela ne soit pas garanti être le cas.

AllowOomManagement 16

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : autorisez le processus hébergeant le service lié à passer par sa gestion normale de la mémoire. Il sera traité plus comme un service en cours d’exécution, permettant au système d’effacer (temporairement) le processus si faible en mémoire ou pour un autre caprice qu’il peut avoir, et être plus agressif sur le fait de le faire un candidat à être tué (et redémarré) s’il s’exécute pendant longtemps.

WaivePriority 32

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : n’a pas d’impact sur la priorité de planification ou de gestion de la mémoire du processus d’hébergement du service cible. Permet au processus du service d’être géré sur la liste LRU en arrière-plan comme un processus d’application standard en arrière-plan.

Important 64

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : ce service est très important pour le client. Il doit donc être apporté au niveau du processus de premier plan lorsque le client est. Normalement, un processus ne peut être déclenché qu’au niveau de visibilité par un client, même si ce client est au premier plan.

AdjustWithActivity 128

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : si la liaison à partir d’une activité permet de lever l’importance du processus du service cible en fonction de la visibilité de l’activité à l’utilisateur, que l’autre indicateur soit utilisé pour réduire la quantité d’importance globale du processus client est utilisée pour l’impact.

NotPerceptible 256

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : si la liaison à partir d’une application visible ou perceptible par l’utilisateur réduit l’importance du service cible au-dessous du niveau perceptible. Cela permet au système d’effacer (temporairement) le processus lié à partir de la mémoire afin de rendre place aux processus plus importants visibles par l’utilisateur.

AllowActivityStarts 512

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : si la liaison à partir d’une application visible, le service lié est autorisé à démarrer une activité en arrière-plan. Il s’agissait du comportement par défaut avant la version du KIT de développement logiciel (SDK) Build.VERSION_CODES. UPSIDE_DOWN_CAKE . Depuis lors, le comportement par défaut a changé pour interdire au service lié de démarrer une activité en arrière-plan même si l’application liée à elle est au premier plan, sauf si cet indicateur est spécifié lors de la liaison.

IncludeCapabilities 4096

Indicateur pour bindService(Intent, BindServiceFlags, Executor, ServiceConnection) : si la liaison à partir d’une application qui a des fonctionnalités spécifiques en raison de son état de premier plan tel qu’une activité ou un service de premier plan, cet indicateur permet à l’application liée d’obtenir les mêmes fonctionnalités, tant qu’elle dispose également des autorisations requises. Si la liaison à partir d’une application supérieure et de sa version cible du SDK est au niveau ou supérieur à Build.VERSION_CODES. R , l’application doit utiliser explicitement BIND_INCLUDE_CAPABILITIES indicateur pour transmettre toutes les fonctionnalités au service afin que l’autre application puisse avoir un accès en cours d’utilisation, tel que l’emplacement, la caméra, le microphone à partir de l’arrière-plan. Si la liaison à partir d’une application supérieure et de sa version cible du Kit de développement logiciel (SDK) est inférieure à Build.VERSION_CODES. R , BIND_INCLUDE_CAPABILITIES est implicite.

SharedIsolatedProcess 8192

Indicateur pour bindIsolatedService(Intent, BindServiceFlags, String, Executor, ServiceConnection) : liez le service dans un processus isolé partagé. La spécification de cet indicateur permet à plusieurs services isolés d’être exécutés dans un processus isolé partagé unique. L’instance de processus isolée partagée est identifiée par le paramètre instanceName dans bindIsolatedService(Intent,int,String,Executor,ServiceConnection) . Les appels suivants à bindIsolatedService(Intent, BindServiceFlags, String, Executor, ServiceConnection) avec le même instanceName entraînent la colocalisation du service isolé dans le même processus isolé partagé. Notez que le processus isolé partagé est limité à l’application appelante ; une fois créée, seule l’application appelante peut lier des services isolés supplémentaires au processus partagé. Toutefois, les services eux-mêmes peuvent provenir de différentes API et donc de différents fournisseurs. Seuls les services qui définissent l’attribut R.attr.allowSharedIsolatedProcess sur true sont autorisés à être liés à un processus isolé partagé.

PackageIsolatedProcess 16384

Indicateur pour bindIsolatedService(Intent, BindServiceFlags, String, Executor, ServiceConnection) : liez le service dans un processus isolé partagé, mais uniquement avec d’autres services isolés du même package qui déclarent le même nom de processus. La spécification de cet indicateur permet à plusieurs services isolés définis dans le même package d’être exécutés dans un processus isolé partagé unique. Ce processus isolé partagé doit être spécifié, car cet indicateur ne fonctionne pas avec le processus d’application par défaut. Cet indicateur est différent de BIND_SHARED_ISOLATED_PROCESS, car il autorise uniquement les services de liaison à partir du même package dans le même processus isolé partagé. Cela signifie également que le processus isolé de package partagé est global et n’est pas limité à chaque application appelante potentielle. L’instance de processus isolée partagée est identifiée par l’attribut « android :process » défini par le service. Cet indicateur ne peut pas être utilisé sans ce jeu d’attributs. Valeur constante : 16384 (0x00004000)

Remarques

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à