Ответ 1
PendingIntent
Описание действия Intent и target для выполнения с ним. Экземпляры этого класса создаются с помощью getActivity (Context, int, Intent, int), getBroadcast (Context, int, Intent, int), getService (Context, int, Intent, int); возвращенный объект может быть передан другим приложениям, чтобы они могли выполнить действие, которое вы описали от своего имени позднее.
Предоставляя PendingIntent другому приложению, вы предоставляете ему право выполнить указанную операцию, как если бы это было другое приложение (с теми же правами и идентификацией). Таким образом, вы должны быть осторожны в том, как вы создаете PendingIntent: часто, например, базовый Intent, который вы поставляете, будет иметь имя компонента, явно установленное на один из ваших собственных компонентов, чтобы гарантировать, что он в конечном итоге отправлен туда и нигде больше.
A PendingIntent сам по себе является просто ссылкой на токен, поддерживаемый системой, описывающей исходные данные, используемые для ее получения. Это означает, что даже если его собственный процесс приложения будет убит, сам PendingIntent останется пригодным для других процессов, которые ему были предоставлены. Если впоследствии приложение-создатель повторно извлекает один и тот же вид PendingIntent (та же операция, то же действие, данные, категории и компоненты Intent, и те же флаги), он получит PendingIntent, представляющий тот же токен, если он все еще действителен, и может таким образом отмените вызов(), чтобы удалить его.
INTENT
Цель - абстрактное описание выполняемой операции. Он может использоваться с startActivity для запуска Activity, broadcastIntent для отправки его любым заинтересованным компонентам BroadcastReceiver и startService (Intent) или bindService (Intent, ServiceConnection, int) для связи с фоновым сервисом.
Anent обеспечивает средство для выполнения поздней привязки во времени между кодом в разных приложениях. Его наиболее значимое использование - это начало деятельности, где ее можно рассматривать как клей между действиями. Это в основном пассивная структура данных, содержащая абстрактное описание действия, которое необходимо выполнить. Основные сведения о намерениях заключаются в следующем:
action - общее действие, которое необходимо выполнить, например ACTION_VIEW, ACTION_EDIT, ACTION_MAIN и т.д. data - данные для работы, такие как запись человека в базе данных контактов, выраженная как Uri.