PendingIntent Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
- Attribute
- Implementiert
Hinweise
Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll. Instanzen dieser Klasse werden mit getActivity(Context, int, Intent, int), getActivities(Context, int, Intent, int), getBroadcast(Context, int, Intent, int) und getService(int, Intent, int) erstellt. das zurückgegebene Objekt kann an andere Anwendungen übergeben werden, damit sie die aktion ausführen können, die Sie zu einem späteren Zeitpunkt in Ihrem Auftrag 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 dies noch gültig ist, und kann daher cancel() aufrufen, 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. Die Teile der Absicht, die für den Abgleich verwendet werden, sind dieselben, die von Intent.filterEquals definiert sind. Wenn Sie zwei Intent-Objekte verwenden, die gemäß Intent.filterEquals gleichwertig sind, 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. Dies kann eines der Intent-Attribute sein, die von Intent.filterEquals oder anderen Anforderungscode-Ganzzahlen berücksichtigt werden, die für getActivity(Context, int, Intent, int), getActivities(Context, int, Intent, int), getBroadcast(Context, int, Intent, int) oder getService(Context, int, intent, int) bereitgestellt werden. Wenn Sie nur jeweils einen "PendingIntent" für eine der von Ihnen verwendeten Absichten benötigen, können Sie alternativ die Flags FLAG_CANCEL_CURRENT oder FLAG_UPDATE_CURRENT verwenden, um entweder abzubrechen oder zu ändern, welche aktuelle PendingIntent dem von Ihnen bereitgestellten Intent zugeordnet ist. Beachten Sie außerdem, dass Flags wie FLAG_ONE_SHOT oder FLAG_IMMUTABLE die Instanz "PendingIntent" beschreiben und daher 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 sowohl FLAG_ONE_SHOT als auch FLAG_NO_CREATE bereitgestellt werden.
Android-Referenz 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 die erstellte PendingIntent mit FLAG_MUTABLE eine unsichere implizite Absicht enthalten darf. |
| FlagMutable |
Veraltet.
Flag, das angibt, dass der erstellte PendingIntent änderbar sein soll. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Creator |
Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll. |
| 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_IMMUTABLE markiert ist. |
| IsService |
Eine Beschreibung einer Absichts- und Zielaktion, die damit ausgeführt werden soll. |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniPeerMembers |
Stellt die JNI-Bindungsinfrastruktur für Android.App.PendingIntent bereit. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| TargetPackage |
Veraltet.
Diese Methode war in API-Ebene 17 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 spezieller Objekte, die in der Marshall-Darstellung dieser Paketable-Instanz enthalten sind. |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| GetActivities(Context, Int32, Intent[], PendingIntentFlags, Bundle) |
Wie getActivity(Context,int,Intent,int) kann jedoch ein Array von Intents bereitgestellt werden. |
| GetActivities(Context, Int32, Intent[], PendingIntentFlags) |
Wie getActivity(Context,int,Intent,int) kann jedoch ein Array von Intents bereitgestellt werden. |
| GetActivity(Context, Int32, Intent, PendingIntentFlags, Bundle) |
Rufen Sie einen PendingIntent ab, der eine neue Aktivität startet, z. B. context.startActivity(Intent). |
| GetActivity(Context, Int32, Intent, PendingIntentFlags) |
Rufen Sie einen PendingIntent ab, der eine neue Aktivität startet, z. B. context.startActivity(Intent). |
| GetBroadcast(Context, Int32, Intent, PendingIntentFlags) |
Rufen Sie einen PendingIntent ab, der eine Übertragung durchführt, z. B. den Aufruf von Context.sendBroadcast(). |
| GetForegroundService(Context, Int32, Intent, PendingIntentFlags) |
Rufen Sie einen PendingIntent ab, der einen Vordergrunddienst startet, z. B. 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. den Aufruf von 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 dieser PendingIntent zugeordnet ist, sodass der Aufrufer Informationen über die zu verwendende Absicht angeben und benachrichtigt werden kann, wenn die Übermittlung abgeschlossen ist. |
| Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler, String) |
Führen Sie den vorgang aus, der dieser PendingIntent zugeordnet ist, sodass der Aufrufer Informationen über die zu verwendende Absicht angeben und benachrichtigt werden kann, wenn die Übermittlung abgeschlossen ist. |
| Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler) |
Führen Sie den vorgang aus, der dieser PendingIntent zugeordnet ist, sodass der Aufrufer Informationen über die zu verwendende Absicht angeben und benachrichtigt werden kann, wenn die Übermittlung abgeschlossen 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 dieser PendingIntent zugeordnet ist, sodass der Anrufer benachrichtigt werden kann, wenn die Übermittlung abgeschlossen 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>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (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() |
Benachrichtigt die Interoplaufzeit, dass dieser verwaltete Peer verworfen wurde. (Geerbt von Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
Gibt diesen Java Peer frei, es sei denn, er wird von einem anderen verwalteten Verweis beibehalten. (Geerbt von Object) |
| IJavaPeerable.Finalized() |
Benachrichtigt die Interoplaufzeit, dass dieser verwaltete Peer abgeschlossen wurde. (Geerbt von Object) |
| IJavaPeerable.JniManagedPeerState |
Ruft den Zustand ab, der die Beziehung zwischen diesem verwalteten Peer und seinem JNI-Verweis beschreibt. (Geerbt von Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Legt den Interop-Identitätshashcode für diesen Java Peer fest. (Geerbt von Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Legt den verwalteten und JNI-Peerstatus für diesen Java Peer fest. (Geerbt von Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Legt den JNI-Objektverweis fest, der von diesem verwalteten Peer verwendet wird. (Geerbt von Object) |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| 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 |