Context.RevokeSelfPermissionsOnKill(ICollection<String>) Methode

Definition

Löst den Widerruf einer oder mehrerer Berechtigungen für das aufrufende Paket aus.

[Android.Runtime.Register("revokeSelfPermissionsOnKill", "(Ljava/util/Collection;)V", "GetRevokeSelfPermissionsOnKill_Ljava_util_Collection_Handler", ApiSince=33)]
public virtual void RevokeSelfPermissionsOnKill(System.Collections.Generic.ICollection<string> permissions);
[<Android.Runtime.Register("revokeSelfPermissionsOnKill", "(Ljava/util/Collection;)V", "GetRevokeSelfPermissionsOnKill_Ljava_util_Collection_Handler", ApiSince=33)>]
abstract member RevokeSelfPermissionsOnKill : System.Collections.Generic.ICollection<string> -> unit
override this.RevokeSelfPermissionsOnKill : System.Collections.Generic.ICollection<string> -> unit

Parameter

permissions
ICollection<String>

Sammlung der zu widerrufenden Berechtigungen.

Attribute

Hinweise

Löst den Widerruf einer oder mehrerer Berechtigungen für das aufrufende Paket aus. Ein Paket kann nur Laufzeitberechtigungen widerrufen. Wenn derzeit keine Berechtigung erteilt wird, wird sie ignoriert und wird nicht widerrufen (auch wenn sie später vom Benutzer erteilt wurde). Letztendlich sollten Sie niemals Annahmen über einen Berechtigungsstatus treffen, da Benutzer sie jederzeit erteilen oder widerrufen können.

Hintergrundberechtigungen, die noch keine entsprechende Vordergrundberechtigung erhalten haben, sobald der Widerruf wirksam ist, werden ebenfalls widerrufen.

Der Widerruf erfolgt asynchron und beendet alle Prozesse, die in der aufrufenden UID ausgeführt werden. Sie wird ausgelöst, sobald sie sicher ist. Insbesondere wird es nicht ausgelöst, solange das Paket im Vordergrund verbleibt oder über aktive Manifestkomponenten verfügt (z. B. wenn eine andere App auf einen Inhaltsanbieter im Paket zugreift).

Wenn Sie die Berechtigungen sofort widerrufen möchten, können Sie sich mit einer Verzögerung einwähnen System.exit()Handler.postDelayed , um den Abschluss von asynchronem IPC zuzulassen, könnte sich aber System.exit() auch auf andere Apps auswirken, die zurzeit auf Ihre App zugreifen. Beispielsweise stürzt apps, die auf einen Inhaltsanbieter in Ihrer App zugreifen, ab.

Beachten Sie, dass auf der Einstellungs-UI eine Berechtigungsgruppe angezeigt wird, solange mindestens eine Berechtigung in der Gruppe erteilt wird. Wenn der Benutzer den Widerruf in den Einstellungen beobachten soll, sollten Sie jede Berechtigung in der Zielgruppe widerrufen. Um die aktuelle Liste der Berechtigungen in einer Gruppe kennenzulernen, können Sie diese verwenden PackageManager#getGroupOfPlatformPermission(String, Executor, Consumer) und PackageManager#getPlatformPermissionsForGroup(String, Executor, Consumer). Diese Liste der Berechtigungen kann sich im Laufe der Zeit weiterentwickeln. Daher wird empfohlen, zu überprüfen, ob sie die Berechtigung enthält, die Sie beibehalten möchten, bevor Sie versuchen, eine ganze Gruppe zu widerrufen.

Java Dokumentation für android.content.Context.revokeSelfPermissionsOnKill(java.util.Collection<java.lang.String>).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: