Android ApiDemo学习(二)notification——1 IncomingMessage

官网的步骤:http://developer.android.com/guide/topics/ui/notifiers/notifications.html

notification是状态栏上的通知。比如来信息了,就会看到状态栏上有个小小的信封样式的图标。点击状态栏向下滑,可以看到这个信息的内容。这就是notification做的~

 demo中的相关文件是:IncomingMessage.java,IncomingMessageInterstitial.java,IncomingMessageView.java

 

步骤:

  1. 获取NotificationManager对象
  2. 实例化一个notification对象,这个对象要指定notification显示时的图标、文字和时间
  3. 设置点击notification后执行的动作:使用一个PendingIntent来启动新的activity;用notification的setLatestEventInfo方法设置发信人、信息和pendingintent
  4. 使用NotificationManager的notify方法,把notification传给notificationmanager

关于PendingIntent:

(1)通常点击notification后会开启一个新的activity。这需要使用到Intent来launch

(2)普通的Intent通常用于Activity、Service、BroadcastReceiver之间,而且,Intent是立即启动的。我们在这里不能让新的activity立即启动,要点击notification后再启动,因此需要使用PendingIntent。application1创建的PendingIntent可以传递给另一个application2,使application2感觉就像1一样使用这个PendingIntent的数据。即使application1死了,也没有影响。

(3)使用PendingIntent.getActivities来启动新的activities,注意这里是复数形式,表示参数中可以使用Intent数组。如果只用一个Intent,那就用getActivity方法。类似Context.startActivity(Intent)。

 

你可能感兴趣的:(android,service,application)