PendingIntent Klasse

Definition

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

[Android.Runtime.Register("android/app/PendingIntent", DoNotGenerateAcw=true)]
public sealed class PendingIntent : Java.Lang.Object, Android.OS.IParcelable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/app/PendingIntent", DoNotGenerateAcw=true)>]
type PendingIntent = class
    inherit Object
    interface IParcelable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Vererbung
PendingIntent
Attribute
Implementiert

Hinweise

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll. Instanzen dieser Klasse werden mit #getActivity, #getActivities, #getBroadcastund #getService; das zurückgegebene Objekt an andere Anwendungen übergeben, sodass sie die aktion ausführen können, die Sie in Ihrem Namen zu einem späteren Zeitpunkt beschrieben haben.

Indem Sie einer anderen Anwendung einen PendingIntent zugeben, gewähren Sie ihm das Recht, den von Ihnen angegebenen Vorgang auszuführen, als ob sich die andere Anwendung selbst (mit den gleichen Berechtigungen und Identitäten) befand. Daher sollten Sie darauf achten, wie Sie den PendingIntent erstellen: Fast immer sollte der von Ihnen bereitgestellte Basisabsicht den Komponentennamen explizit auf eine Ihrer eigenen Komponenten festgelegt haben, um sicherzustellen, dass sie letztendlich an ein anderes Element gesendet wird.

Ein PendingIntent selbst ist einfach ein Verweis auf ein vom System verwaltetes Token, das die ursprünglichen Daten beschreibt, die zum Abrufen verwendet werden. Dies bedeutet, dass der PendingIntent selbst, selbst wenn der Prozess seiner eigenen Anwendung getötet wird, von anderen Prozessen verwendet werden kann, die ihm gegeben wurden. Wenn die erstellungsanwendung später dieselbe Art von PendingIntent (Same Operation, same Intent-Aktion, Daten, Kategorien und Komponenten und dieselben Flags) erneut abruft, erhält sie einen PendingIntent, der dasselbe Token darstellt, wenn das noch gültig ist, und kann daher aufgerufen #cancel werden, um es zu entfernen.

Aufgrund dieses Verhaltens ist es wichtig zu wissen, wann zwei Intents als identisch angesehen werden, um einen PendingIntent abzurufen. Ein häufiger Fehler besteht darin, mehrere PendingIntent-Objekte mit Intents zu erstellen, die nur in ihren "zusätzlichen" Inhalten variieren, wobei erwartet wird, dass jedes Mal ein anderer PendingIntent abgerufen wird. Dies geschieht <>nicht</em>. Die Teile der Absicht, die für den Abgleich verwendet werden, sind dieselben, die von Intent#filterEquals(Intent) Intent.filterEquals. Wenn Sie zwei Intent-Objekte verwenden, die gleichbedeutend Intent#filterEquals(Intent) Intent.filterEqualssind, erhalten Sie für beide Objekte denselben PendingIntent.

Es gibt zwei typische Möglichkeiten, dies zu bewältigen.

Wenn Sie wirklich mehrere unterschiedliche PendingIntent-Objekte gleichzeitig benötigen (z. B. zwei Benachrichtigungen, die beide gleichzeitig angezeigt werden), müssen Sie sicherstellen, dass es etwas anderes gibt, um sie verschiedenen PendingIntents zuzuordnen. Hierbei kann es sich um eines der Intent-Attribute handeln, die von Intent#filterEquals(Intent) Intent.filterEquals, oder von verschiedenen Anforderungscode-Ganzzahlen berücksichtigt werden, die an #getActivity, , #getActivities, #getBroadcastoder #getService.

Wenn Sie nur jeweils einen "PendingIntent" für einen der von Ihnen verwendeten Absichten benötigen, können Sie alternativ die Flags #FLAG_CANCEL_CURRENT verwenden oder #FLAG_UPDATE_CURRENT die aktuellen PendingIntent-Elemente abbrechen oder ändern, die dem von Ihnen bereitgestellten Intent zugeordnet sind.

Beachten Sie außerdem, dass Flags wie #FLAG_ONE_SHOT oder #FLAG_IMMUTABLE beschreiben die PendingIntent-Instanz und somit verwendet werden, um sie zu identifizieren. Alle Aufrufe zum Abrufen oder Ändern eines mit diesen Flags erstellten PendingIntent erfordern auch, dass diese Flags in Verbindung mit anderen bereitgestellt werden. Um z. B. eine vorhandene mit FLAG_ONE_SHOT erstellte PendingIntent abzurufen, <müssen b>/b< FLAG_ONE_SHOT> und FLAG_NO_CREATE bereitgestellt werden.

Java-Dokumentation für android.app.PendingIntent.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Felder

Name Beschreibung
FlagAllowUnsafeImplicitIntent
Veraltet.

Flag, das angibt, dass der erstellte PendingIntent mit #FLAG_MUTABLE einer unsicheren impliziten Absicht zulässig ist.

FlagMutable
Veraltet.

Flag, das angibt, dass der erstellte PendingIntent änderbar sein soll.

Eigenschaften

Name Beschreibung
Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
Creator
CreatorPackage

Geben Sie den Paketnamen der Anwendung zurück, die diesen PendingIntent erstellt hat, d. h. die Identität, unter der Sie tatsächlich die Absicht senden.

CreatorUid

Gibt die UID der Anwendung zurück, die diesen PendingIntent erstellt hat, d. h. die Identität, unter der Sie tatsächlich die Absicht senden.

CreatorUserHandle

Geben Sie das Benutzerhandle der Anwendung zurück, die diese PendingIntent erstellt hat, d. h. den Benutzer, unter dem Sie die Absicht tatsächlich senden.

Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
IntentSender

Abrufen eines IntentSender-Objekts, das den vorhandenen Absender des PendingIntent umschließt

IsActivity

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

IsBroadcast

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

IsForegroundService

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

IsImmutable

Überprüfen Sie, ob dieser PendingIntent mit #FLAG_IMMUTABLEmarkiert ist.

IsService

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

JniIdentityHashCode

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
JniPeerMembers

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

PeerReference

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
TargetPackage
Veraltet.

Dieses Mitglied ist veraltet.

ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)
ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

(Geerbt von Object)

Methoden

Name Beschreibung
Cancel()

Abbrechen einer aktuell aktiven PendingIntent.

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
DescribeContents()

Beschreiben Sie die Arten von speziellen Objekten, die in der Marshalldarstellung dieser Paketable enthalten sind.

Dispose()

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
Dispose(Boolean)

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetActivities(Context, Int32, Intent[], PendingIntentFlags, Bundle)

Like #getActivity(Context, int, Intent, int), but allows an array of Intents to be supplied.

GetActivities(Context, Int32, Intent[], PendingIntentFlags)

Like #getActivity(Context, int, Intent, int), but allows an array of Intents to be supplied.

GetActivity(Context, Int32, Intent, PendingIntentFlags, Bundle)

Rufen Sie einen PendingIntent ab, der eine neue Aktivität startet, z. B. aufrufen Context#startActivity(Intent) Context.startActivity(Intent).

GetActivity(Context, Int32, Intent, PendingIntentFlags)

Rufen Sie einen PendingIntent ab, der eine neue Aktivität startet, z. B. aufrufen Context#startActivity(Intent) Context.startActivity(Intent).

GetBroadcast(Context, Int32, Intent, PendingIntentFlags)

Rufen Sie einen PendingIntent ab, der eine Übertragung durchführt, z. B. Anrufe Context#sendBroadcast(Intent) Context.sendBroadcast().

GetForegroundService(Context, Int32, Intent, PendingIntentFlags)

Rufen Sie einen PendingIntent ab, der einen Vordergrunddienst startet, z. B. aufrufen Context#startForegroundService Context.startForegroundService().

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetService(Context, Int32, Intent, PendingIntentFlags)

Rufen Sie einen PendingIntent ab, der einen Dienst startet, z. B. aufrufen Context#startService Context.startService().

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
ReadPendingIntentOrNullFromParcel(Parcel)

Komfortfunktion zum Lesen eines PendingIntent- oder NULL-Zeigers aus einem Paket.

Send()

Führen Sie den vorgang aus, der diesem PendingIntent zugeordnet ist.

Send(Bundle)

Führen Sie den vorgang aus, der dieser PendingIntent zugeordnet ist, und stellen Sie zusätzliche Optionen für den Vorgang bereit.

Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler, String, Bundle)

Führen Sie den vorgang aus, der diesem PendingIntent zugeordnet ist.

Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler, String)

Führen Sie den vorgang aus, der diesem PendingIntent zugeordnet ist.

Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler)

Führen Sie den vorgang aus, der diesem PendingIntent zugeordnet ist.

Send(Context, Result, Intent)

Führen Sie den diesem PendingIntent zugeordneten Vorgang aus, sodass der Aufrufer Informationen über die zu verwendende Absicht angeben kann.

Send(Result, PendingIntent+IOnFinished, Handler)

Führen Sie den vorgang aus, der diesem PendingIntent zugeordnet ist.

Send(Result)

Führen Sie den vorgang aus, der diesem PendingIntent zugeordnet ist.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
ToArray<T>()

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><>

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
WritePendingIntentOrNullToParcel(PendingIntent, Parcel)

Komfortfunktion zum Schreiben eines PendingIntent- oder NULL-Zeigers in ein Paket.

WriteToParcel(Parcel, ParcelableWriteFlags)

Flachen Sie dieses Objekt in ein Paket.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IJavaPeerable.Disposed()

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
IJavaPeerable.Finalized()

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

(Geerbt von Object)

Erweiterungsmethoden

Name Beschreibung
GetJniTypeName(IJavaPeerable)

Ruft den JNI-Namen des Typs der Instanz selfab.

JavaAs<TResult>(IJavaPeerable)

Versuchen Sie, die Eingabe TResultzu self erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Versuchen Sie, die Eingabe TResultzu self erzwingen, und überprüfen Sie, ob die Koersion auf der Java Seite gültig ist.

Gilt für: