Langue

AppOpsManager Classe

Définition

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

[Android.Runtime.Register("android/app/AppOpsManager", DoNotGenerateAcw=true)]
public class AppOpsManager : Java.Lang.Object
[<Android.Runtime.Register("android/app/AppOpsManager", DoNotGenerateAcw=true)>]
type AppOpsManager = class
    inherit Object
Héritage
AppOpsManager
Attributs

Remarques

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi. Les opérations d’application couvrent une grande variété de fonctionnalités, de l’aide au contrôle d’accès des autorisations d’exécution et au suivi de la consommation de batterie. Les applications de contrôle d’accès peuvent être contrôlées pour chaque interface utilisateur ou pour chaque package. Celui qui est utilisé dépend du fournisseur d’API qui conserve cette application-op. Pour toute application liée à la sécurité ou à la confidentialité, le fournisseur doit contrôler l’application pour chaque interface utilisateur, car toute sécurité et confidentialité est basée sur l’interface utilisateur dans Android. Pour contrôler l’accès à l’application-op, vous pouvez définir un mode sur : MODE_DEFAULT comportement par défaut, peut différer de l’opération d’application ou de l’opération d’application MODE_ALLOWED Autoriser l’accès MODE_IGNORED Ne pas autoriser l’accès, c’est-à-dire ne pas effectuer l’action demandée ou retourner des données non ou d’espace réservé MODE_ERRORED Lever une exception de sécurité sur l’accès. Cela peut être supprimé à l’aide d’un ... noThrow, méthode pour vérifier les fournisseurs d’API en mode doivent vérifier le mode retourné par noteOp(String, int, String) s’ils autorisent l’accès aux opérations contrôlées par l’application.op. unsafeCheckOp(String, int, String) doit être utilisé pour vérifier le mode si aucun accès n’est accordé. Par exemple, cela peut être utilisé pour afficher l’état d’opération d’application dans l’interface utilisateur ou lors de la vérification de l’état avant d’appeler ultérieurement noteOp(String, int, String) de toute façon. Si une opération fait référence à un intervalle de temps (par exemple, une session d’enregistrement audio), le fournisseur d’API doit utiliser startOp(String, int, String) et finishOp(String, int, String) au lieu de noteOp(String, int, String). Les autorisations d’exécution et les opérations d’application Chaque autorisation d’exécution définie par la plateforme (en plus des modificateurs en arrière-plan) a une opération d’application associée utilisée pour le suivi, mais également pour permettre des échecs silencieux. Par exemple, si l’autorisation d’exécution est refusée à l’appelant obtient une instance SecurityException, mais si l’autorisation est accordée et que l’application-op est MODE_IGNORED, les appelants obtiennent un comportement d’espace réservé, par exemple les rappels d’emplacement ne se produisent pas. Les autorisations app-ops autorisations App-ops sont des autorisations définies par la plateforme qui peuvent être substituées. La vérification de sécurité pour les autorisations app-op doit vérifier par défaut l’état d’octroi d’autorisation. Si l’état app-op est défini sur MODE_ALLOWED ou MODE_IGNORED l’état app-op doit être vérifié au lieu de l’état d’octroi d’autorisations. Cette fonctionnalité permet d’accorder l’accès par défaut aux applications répondant aux exigences d’un certain niveau d’autorisation. Le comportement peut toujours être substitué si nécessaire. Le suivi des opérations d’application effectue le suivi de nombreux événements importants, y compris tous les accès aux API protégées par l’autorisation d’exécution. Pour ce faire, effectuez le suivi lorsqu’une application a été notée ou démarrée. Les données suivies peuvent uniquement être lues par les composants système. Seules remarqueOp(String, int, String)/startOp(String, int, String) sont suivies ; unsafeCheckOp(String, int, String) n’est pas suivi. Par conséquent, il est important d’appeler noteOp(String, int, String) ou startOp(String, int, String) lors de la fourniture d’un accès aux opérations ou données protégées. Certaines applications transfèrent l’accès à d’autres applications. Par exemple, une application peut obtenir l’emplacement à partir du fournisseur d’emplacement du système, puis envoyer l’emplacement plus loin à une 3e application. Dans ce cas, l’application qui transmet les données doit appeler noteProxyOp(String, String) pour signaler le proxy d’accès. Cela peut également avoir un sens à l’intérieur d’une application unique si l’accès est transféré entre deux parties du balisage avec des balises d’attribution différentes. Une application peut inscrire un OnOpNotedCallback pour être informé des accès au système. Étant donné que chaque autorisation d’exécution a une application associée, cette API est particulièrement utile pour une application qui souhaite rechercher des accès inattendus aux données privées.

Référence Android pour android.app.AppOpsManager.

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.

Constructeurs

Nom Description
AppOpsManager(IntPtr, JniHandleOwnership)

Initialise une représentation managée d’un objet Java Native Interface existant.

Champs

Nom Description
ModeAllowed
Obsolète.

Résultat de checkOp(String, int, String), noteOp(String, int, String), startOp(String, int, String) : l’appelant donné est autorisé à effectuer l’opération donnée.

ModeDefault
Obsolète.

Résultat de checkOp(String, int, String), noteOp(String, int, String), startOp(String, int, String) : l’appelant donné doit utiliser sa vérification de sécurité par défaut.

ModeErrored
Obsolète.

Résultat de checkOpNoThrow(String, int, String), noteOpNoThrow(String, int, String), startOpNoThrow(String, int, String) : l’appelant donné n’est pas autorisé à effectuer l’opération donnée, et cette tentative doit entraîner une erreur irrécupérable, généralement une SecurityException.

ModeForeground
Obsolète.

Mode spécial qui signifie « autoriser uniquement lorsque l’application est au premier plan ». Cela n’est pas retourné par unsafeCheckOp(String, int, String), noteOp(String, int, String), startOp(String, int, String).

ModeIgnored
Obsolète.

Résultat de checkOp(String, int, String), noteOp(String, int, String), startOp(String, int, String) : l’appelant donné n’est pas autorisé à effectuer l’opération donnée, et cette tentative doit échouer en mode silencieux (elle ne doit pas provoquer le blocage de l’application).

OpNotedCallbackFlagIgnoreAsync
Obsolète.

Ignore les événements notés d’opérations asynchrones.

OpstrAddVoicemail

Requis pour accéder aux informations relatives à l’état du téléphone.

OpstrAnswerPhoneCalls

Répondre aux appels téléphoniques entrants

OpstrBodySensors

Accès aux capteurs du corps tels que la fréquence cardiaque, etc.

OpstrCallPhone

Permet à une application de lancer un appel téléphonique.

OpstrCamera

Obligatoire pour pouvoir accéder à l’appareil photo.

OpstrCoarseLocation

Accès aux informations d’emplacement grossières.

OpstrFineLocation

Accès aux informations de localisation correctes.

OpstrGetUsageStats

Accès à UsageStatsManager.

OpstrMockLocation

Injectez un emplacement fictif dans le système.

OpstrMonitorHighPowerLocation

Surveillance continue des données d’emplacement avec une demande de puissance relativement élevée.

OpstrMonitorLocation

Surveillance continue des données d’emplacement.

OpstrPictureInPicture

Accès à l’image.

OpstrProcessOutgoingCalls

Api d’accès pour détourner les appels sortants

OpstrReadCalendar

Permet à une application de lire les données de calendrier de l’utilisateur.

OpstrReadCallLog

Permet à une application de lire le journal des appels de l’utilisateur.

OpstrReadCellBroadcasts

Lire les messages de diffusion de cellules précédemment reçus.

OpstrReadContacts

Permet à une application de lire les données de contacts de l’utilisateur.

OpstrReadExternalStorage

Lire le stockage externe.

OpstrReadPhoneNumbers

Valeur constante : « android :read_phone_numbers »

OpstrReadPhoneState

Requis pour accéder aux informations relatives à l’état du téléphone.

OpstrReadSms

Permet à une application de lire des sms.

OpstrReceiveMms

Permet à une application de recevoir des messages MMS.

OpstrReceiveSms

Permet à une application de recevoir des sms.

OpstrReceiveWapPush

Permet à une application de recevoir des messages Push WAP.

OpstrRecordAudio

Obligatoire pour pouvoir accéder à l’appareil microphone.

OpstrSendSms

Permet à une application d’envoyer des sms.

OpstrSystemAlertWindow

Requis pour dessiner sur d’autres applications.

OpstrUseFingerprint

Utilisez l’API d’empreinte digitale.

OpstrUseSip

Api d’accès pour l’appel SIP via VOIP ou Wi-Fi

OpstrWriteCalendar

Permet à une application d’écrire dans les données de calendrier de l’utilisateur.

OpstrWriteCallLog

Permet à une application d’écrire dans le journal des appels de l’utilisateur.

OpstrWriteContacts

Permet à une application d’écrire dans les données de contacts de l’utilisateur.

OpstrWriteExternalStorage

Écrire un stockage externe.

OpstrWriteSettings

Requis pour écrire/modifier/mettre à jour les paramètres système.

WatchForegroundChanges
Obsolète.

Indicateur pour startWatchingMode(String,String,int,OnOpChangedListener) : obtient également des rapports si l’état de premier plan de l’interface utilisateur d’une opération change.

Propriétés

Nom Description
Class

Retourne la classe runtime de ce Object.

(Hérité de Object)
Handle

Handle de l’instance Android sous-jacente.

(Hérité de Object)
JniIdentityHashCode

Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité.

(Hérité de Object)
JniManagedPeerState

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
JniPeerMembers

Fournit une infrastructure de liaison JNI pour Android.App.AppOpsManager.

PeerReference

Obtient la référence d’objet JNI pour cet homologue Java.

(Hérité de Object)
ThresholdClass

Fournit une infrastructure de liaison JNI pour Android.App.AppOpsManager.

ThresholdType

Fournit une infrastructure de liaison JNI pour Android.App.AppOpsManager.

Méthodes

Nom Description
CheckOp(String, Int32, String, String)

Vérifiez si une application peut effectuer une opération.

CheckOp(String, Int32, String)

Vérifiez si une application peut effectuer une opération.

CheckOpNoThrow(String, Int32, String, String)

Comme checkOp(String,int,String,String), mais au lieu de lever une instance SecurityException, elle retourne MODE_ERRORED.

CheckOpNoThrow(String, Int32, String)

Comme checkOp(String,int,String) mais au lieu de lever une instance SecurityException, elle retourne MODE_ERRORED.

CheckOpRawNoThrow(String, Int32, String, String)

Comme checkOp(String,int,String,String), mais retourne le mode brut associé à l’opération.

CheckPackage(Int32, String)

Cette méthode a été déconseillée au niveau de l’API 30.

Clone()

Crée et retourne une copie de cet objet.

(Hérité de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
Dispose()

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
Dispose(Boolean)

Libère les ressources détenues par cet homologue Java.

(Hérité de Object)
DisposeUnlessReferenced()

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
Equals(Object)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
Equals(Object)

Indique si un autre objet est « égal à » celui-ci.

(Hérité de Object)
FinishOp(String, Int32, String, String)

Signaler qu’une application n’effectue plus d’opération qui avait déjà été démarrée avec startOp(String,int,String,String,String,String).

FinishOp(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 30.

FinishProxyOp(String, Int32, String, String)

Signalez qu’une application n’effectue plus d’opération qui avait déjà été démarrée avec startProxyOp(String,int,String,String,String,String).

GetHashCode()

Retourne une valeur de code de hachage pour l’objet.

(Hérité de Object)
IsOpActive(String, Int32, String)

Vérifie si l’opération donnée pour un package est active, c’est-à-dire si l’opération donnée est active.

JavaFinalize()

Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet.

(Hérité de Object)
NoteOp(String, Int32, String, String, String)

Notez qu’une application effectue une opération et vérifiez si l’application est autorisée à l’effectuer.

NoteOp(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 30.

NoteOpNoThrow(String, Int32, String, String, String)

Comme noteOp(String,int,String,String,String,String) mais au lieu de lever une SecurityException, elle retourne MODE_ERRORED.

NoteOpNoThrow(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 30.

NoteProxyOp(String, String, Int32, String, String)

Notez qu’une application effectue une opération pour le compte d’une autre application lors de la gestion d’un IPC.

NoteProxyOp(String, String)

Cette méthode a été déconseillée au niveau de l’API 30.

NoteProxyOpNoThrow(String, String, Int32, String, String)

Comme noteProxyOp(String,String,int,String,String) mais au lieu de lever une Instance SecurityException, elle retourne MODE_ERRORED.

NoteProxyOpNoThrow(String, String, Int32)

Cette méthode a été déconseillée au niveau de l’API 30.

NoteProxyOpNoThrow(String, String)

Cette méthode a été déconseillée au niveau de l’API 30.

Notify()

Réveille un thread unique qui attend le moniteur de cet objet.

(Hérité de Object)
NotifyAll()

Réveille tous les threads qui attendent le moniteur de cet objet.

(Hérité de Object)
PermissionToOp(String)

Obtient le nom d’application associé à une autorisation donnée.

SetHandle(IntPtr, JniHandleOwnership)

Définit la propriété Handle.

(Hérité de Object)
SetOnOpNotedCallback(IExecutor, AppOpsManager+OnOpNotedCallback, AppOpsManagerCallbackFlag)

Définissez un nouvel OnOpNotedCallback.

SetOnOpNotedCallback(IExecutor, AppOpsManager+OnOpNotedCallback)

Définissez un nouvel OnOpNotedCallback.

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
StartOp(String, Int32, String, String, String)

Signalez qu’une application a commencé à exécuter une opération de longue durée.

StartOp(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 30.

StartOpNoThrow(String, Int32, String, String, String)

Comme startOp(String,int,String,String,String), mais au lieu de lever une Instance SecurityException, elle retourne MODE_ERRORED.

StartOpNoThrow(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 30.

StartProxyOp(String, Int32, String, String, String)

Signalez qu’une application a commencé à exécuter une opération de longue durée pour le compte d’une autre application lors de la gestion d’un IPC.

StartProxyOpNoThrow(String, Int32, String, String, String)

Comme startProxyOp(String,int,String,String,String), mais au lieu de lever une Instance SecurityException, elle retourne MODE_ERRORED.

StartWatchingActive(String[], IExecutor, AppOpsManager+IOnOpActiveChangedListener)

Commencez à surveiller les modifications apportées à l’état actif des opérations d’application.

StartWatchingMode(String, String, AppOpsManager+IOnOpChangedListener)

Surveillez les modifications apportées au mode d’exploitation pour l’opération donnée dans le package d’application donné.

StartWatchingMode(String, String, WatchForeground, AppOpsManager+IOnOpChangedListener)

Surveillez les modifications apportées au mode d’exploitation pour l’opération donnée dans le package d’application donné.

StopWatchingActive(AppOpsManager+IOnOpActiveChangedListener)

Arrêtez de surveiller les modifications apportées à l’état actif d’une application.op.

StopWatchingMode(AppOpsManager+IOnOpChangedListener)

Arrêtez la surveillance qui a été démarrée précédemment avec startWatchingMode(String, String, OnOpChangedListener).

ToArray<T>()

Crée un tableau managé à partir de ce wrapper de tableau Java.

(Hérité de Object)
ToString()

Retourne une représentation sous forme de chaîne de l’objet.

(Hérité de Object)
UnregisterFromRuntime()

Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité.

(Hérité de Object)
UnsafeCheckOp(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 36.

UnsafeCheckOpNoThrow(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 36.

UnsafeCheckOpRaw(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 36.

UnsafeCheckOpRawNoThrow(String, Int32, String)

Cette méthode a été déconseillée au niveau de l’API 36.

Wait()

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<>

(Hérité de Object)
Wait(Int64, Int32)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)
Wait(Int64)

Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée.

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
IJavaPeerable.Disposed()

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
IJavaPeerable.Finalized()

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

(Hérité de JavaObject)

Méthodes d’extension

Nom Description
GetJniTypeName(IJavaPeerable)

Obtient le nom JNI du type de l’instance self.

JavaAs<TResult>(IJavaPeerable)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

JavaCast<TResult>(IJavaObject)

Effectue une conversion de type vérifiée par le runtime Android.

JavaCast<TResult>(IJavaObject)

Les opérations d’application sont utilisées à deux fins : contrôle d’accès et suivi.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Essayez de forcer self le typeTResult, en vérifiant que le forçage est valide côté Java.

S’applique à