PendingIntent Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Описание действия "Намерение" и целевого действия для выполнения с ним.
[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
- Наследование
- Атрибуты
- Реализации
Комментарии
Описание действия "Намерение" и целевого действия для выполнения с ним. Экземпляры этого класса создаются с #getActivity
помощью , #getActivities
#getBroadcast
и#getService
; возвращенный объект можно передать другим приложениям, чтобы они могли выполнять действия, описанные от вашего имени в дальнейшем.
Предоставив приложение PendingIntent другому приложению, вы предоставляете ему право выполнять операцию, указанную вами, как если бы другое приложение было самостоятельно (с теми же разрешениями и удостоверениями). Таким образом, следует внимательно следить за тем, как вы создаете pendingIntent: почти всегда, например, базовое намерение, заданное явным образом, должно иметь имя компонента, явно заданное для одного из ваших собственных компонентов, чтобы убедиться, что он в конечном итоге отправляется туда и нигде.
ОжиданиеIntent само по себе — это просто ссылка на маркер, поддерживаемый системой, описывающей исходные данные, используемые для его извлечения. Это означает, что, даже если процесс собственного приложения будет убит, сама ожиданиеIntent останется доступной для использования из других процессов, которые были предоставлены им. Если создание приложения позже повторно извлекает тот же вид PendingIntent (то же действие", то же действие "Намерение", данные, категории и компоненты и те же флаги), он получит ожидающий отложенный маркер, если он по-прежнему действителен, и может вызвать #cancel
его для удаления.
Из-за этого важно знать, когда два намерения считаются одинаковыми для получения ожидающего объекта. Обычно люди делают ошибку для создания нескольких объектов PendingIntent с намерениями, которые зависят только от их дополнительного содержимого, ожидая, чтобы получить другой PendingIntent каждый раз. Это не <</em>> происходит. Части намерения, которые используются для сопоставления, совпадают с теми, которые определены Intent#filterEquals(Intent) Intent.filterEquals
. Если вы используете два объекта "Намерение", эквивалентные Intent#filterEquals(Intent) Intent.filterEquals
как показано, то для обоих из них вы получите то же значение PendingIntent.
С этим можно справиться двумя типичными способами.
Если вам действительно требуется несколько отдельных объектов PendingIntent одновременно (например, для использования в качестве двух уведомлений, отображаемых одновременно), необходимо убедиться, что существует то, что отличается от них, чтобы связать их с разными ОжидающимиIntents. Это может быть любой из атрибутов намерения, которые считаются целыми числами Intent#filterEquals(Intent) Intent.filterEquals
кода запроса, предоставленными #getActivity
, #getActivities
#getBroadcast
или #getService
.
Если для любого из используемых намерений требуется только один объект PendingIntent, можно также использовать флаги #FLAG_CANCEL_CURRENT
или #FLAG_UPDATE_CURRENT
отменить или изменить любое текущее значение PendingIntent, связанное с указанным намерением.
Кроме того, обратите внимание, что флаги, такие как #FLAG_ONE_SHOT
или #FLAG_IMMUTABLE
описание экземпляра PendingIntent, и поэтому используются для его идентификации. Все вызовы для получения или изменения ожидающегоintent, созданного с помощью этих флагов, также требуют, чтобы эти флаги были предоставлены вместе с другими. Например, чтобы получить существующий объект PendingIntent, созданный с помощью FLAG_ONE_SHOT, <необходимо предоставить FLAG_ONE_SHOT b<>/b> и FLAG_NO_CREATE.
Документация по Java для android.app.PendingIntent
.
Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.
Поля
FlagAllowUnsafeImplicitIntent |
Устаревшие..
Флаг, указывающий, что созданный объект PendingIntent с |
FlagMutable |
Устаревшие..
Флаг, указывающий, что созданный объект PendingIntent должен быть изменяемым. |
Свойства
Class |
Возвращает класс среды выполнения этого |
Creator | |
CreatorPackage |
Верните имя пакета приложения, создавшего это ОжиданиеIntent, то есть удостоверение, в котором вы фактически отправите намерение. |
CreatorUid |
Верните пользовательский интерфейс приложения, создавшего этот объект PendingIntent, то есть удостоверение, в котором вы фактически отправите намерение. |
CreatorUserHandle |
Верните дескриптор пользователя приложения, создавшего этот PendingIntent, то есть пользователь, под которым вы фактически отправите намерение. |
Handle |
Дескриптор базового экземпляра Android. (Унаследовано от Object) |
IntentSender |
Получение объекта IntentSender, который упаковывает существующего отправителя объекта PendingIntent |
IsActivity |
Описание действия "Намерение" и целевого действия для выполнения с ним. |
IsBroadcast |
Описание действия "Намерение" и целевого действия для выполнения с ним. |
IsForegroundService |
Описание действия "Намерение" и целевого действия для выполнения с ним. |
IsImmutable |
Проверьте, помечен ли этот параметр PendingIntent. |
IsService |
Описание действия "Намерение" и целевого действия для выполнения с ним. |
JniIdentityHashCode |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
JniPeerMembers |
Описание действия "Намерение" и целевого действия для выполнения с ним. |
PeerReference |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
TargetPackage |
Устаревшие..
Этот элемент считается нерекомендуемым. |
ThresholdClass |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. (Унаследовано от Object) |
ThresholdType |
Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода. (Унаследовано от Object) |
Методы
Cancel() |
Отмена текущего активного объекта PendingIntent. |
Clone() |
Создает и возвращает копию этого объекта. (Унаследовано от Object) |
DescribeContents() |
Описать виды специальных объектов, содержащихся в маршалируемом представлении в этом маршалируемом представлении. |
Dispose() |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
Dispose(Boolean) |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
Equals(Object) |
Указывает, равен ли другой объект этому объекту. (Унаследовано от Object) |
GetActivities(Context, Int32, Intent[], PendingIntentFlags, Bundle) |
Например |
GetActivities(Context, Int32, Intent[], PendingIntentFlags) |
Например |
GetActivity(Context, Int32, Intent, PendingIntentFlags, Bundle) |
Извлеките объект PendingIntent, который запустит новое действие, например вызов |
GetActivity(Context, Int32, Intent, PendingIntentFlags) |
Извлеките объект PendingIntent, который запустит новое действие, например вызов |
GetBroadcast(Context, Int32, Intent, PendingIntentFlags) |
Извлеките объект PendingIntent, который будет выполнять трансляцию, например вызов |
GetForegroundService(Context, Int32, Intent, PendingIntentFlags) |
Получите объект PendingIntent, который запустит службу переднего плана, например вызов |
GetHashCode() |
Возвращает значение хэш-кода для объекта. (Унаследовано от Object) |
GetService(Context, Int32, Intent, PendingIntentFlags) |
Получите объект PendingIntent, который запустит службу, например вызов |
JavaFinalize() |
Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет. (Унаследовано от Object) |
Notify() |
Пробуждение одного потока, ожидающего монитора этого объекта. (Унаследовано от Object) |
NotifyAll() |
Просыпает все потоки, ожидающие монитора этого объекта. (Унаследовано от Object) |
ReadPendingIntentOrNullFromParcel(Parcel) |
Удобная функция для чтения указателя PendingIntent или NULL из посылки. |
Send() |
Выполните операцию, связанную с этим ожиданиемIntent. |
Send(Bundle) |
Выполните операцию, связанную с этим ожиданиемIntent, указав дополнительные параметры для операции. |
Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler, String, Bundle) |
Выполните операцию, связанную с этим ожиданиемIntent. |
Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler, String) |
Выполните операцию, связанную с этим ожиданиемIntent. |
Send(Context, Result, Intent, PendingIntent+IOnFinished, Handler) |
Выполните операцию, связанную с этим ожиданиемIntent. |
Send(Context, Result, Intent) |
Выполните операцию, связанную с этим ОжиданиемIntent, что позволяет вызывающему объекту указать сведения об используемом намерении. |
Send(Result, PendingIntent+IOnFinished, Handler) |
Выполните операцию, связанную с этим ожиданиемIntent. |
Send(Result) |
Выполните операцию, связанную с этим ожиданиемIntent. |
SetHandle(IntPtr, JniHandleOwnership) |
Задает свойство Handle. (Унаследовано от Object) |
ToArray<T>() |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
ToString() |
Возвращает строковое представление объекта. (Унаследовано от Object) |
UnregisterFromRuntime() |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
Wait() |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>. (Унаследовано от Object) |
Wait(Int64, Int32) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
Wait(Int64) |
Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени. (Унаследовано от Object) |
WritePendingIntentOrNullToParcel(PendingIntent, Parcel) |
Удобная функция для записи указателя PendingIntent или NULL на посылку. |
WriteToParcel(Parcel, ParcelableWriteFlags) |
Неструктурировать этот объект в пакете "Посылка". |
Явные реализации интерфейса
IJavaPeerable.Disposed() |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
IJavaPeerable.Finalized() |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
IJavaPeerable.JniManagedPeerState |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Описание действия "Намерение" и целевого действия для выполнения с ним. (Унаследовано от Object) |
Методы расширения
JavaCast<TResult>(IJavaObject) |
Выполняет преобразование типа, проверяемого средой выполнения Android. |
JavaCast<TResult>(IJavaObject) |
Описание действия "Намерение" и целевого действия для выполнения с ним. |
GetJniTypeName(IJavaPeerable) |
Описание действия "Намерение" и целевого действия для выполнения с ним. |