Android:为什么使用 PendingIntent 而不是 Intent 来启动 activity?

Android: Why use PendingIntent instead of Intent to start an activity?

我正在开发一个新闻应用程序,它从新闻网站获取内容。我正在使用新的 GoogleCloudMessaging 技术制作推送通知服务,所以我关注 Google's official tutorial 并且我注意到他们使用了 PendingIntent,所以这是我的问题:

  1. 待定意向到底是什么?
  2. 它与正常意图有何不同?
  3. 我可以用正常的意图替换它并且仍然可以将我的数据(额外)传递给我想要的 activity 吗?
  4. 两者在用法和实现上有什么不同吗?

提前致谢。

待定 Intent 具有特殊用途 - 它可以传递给其他应用程序,以允许它们使用您的应用程序可能没有的相同权限来呼叫您。 PendingIntent 只应在您将其传递给另一个应用程序时使用,例如在设置通知时(通知应用程序可以通过待定意图启动您的 activity)。没有理由在您的应用程序内部使用它。