Notification和NotificationManager的操作比较简单,一般用来获取系统级的服务 NotificationManager,然后实例化Notification的对象,设置它的属性(比如说图标、时间、标题、内容等),最后通过 NotificationManager发出通知即可。

首先,新建一个Android项目--->取名NotificationDemo

MainActivity.java的代码如下:


  
  1. public class MainActivity extends Activity { 
  2.     private Button send; 
  3.     @Override 
  4.     public void onCreate(Bundle savedInstanceState) { 
  5.         super.onCreate(savedInstanceState); 
  6.         setContentView(R.layout.main); 
  7.          
  8.         send = (Button)findViewById(R.id.send); 
  9.         send.setOnClickListener(new View.OnClickListener() { 
  10.              
  11.             @Override 
  12.             public void onClick(View v) { 
  13.                 // TODO Auto-generated method stub 
  14.                  
  15.                 NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 
  16.                  
  17.                 int icon = R.drawable.com_aol_mobile_engadget; 
  18.                 long when = System.currentTimeMillis(); 
  19.                  
  20.                 //新建一个通知,指定标题和图标 
  21.                 //param1:图标  param2:标题  param3:通知时间 
  22.                 Notification notif = new Notification(icon, null, when); 
  23.                  
  24.                 notif.defaults = notif.DEFAULT_SOUND; 
  25.                  
  26.                 //当点击信息时,就会向系统发出openintent意图 
  27.                 PendingIntent pintent = PendingIntent.getActivity(MainActivity.this0null0); 
  28.                  
  29.                 //param4:点击通知时,发出的意图 
  30.                 notif.setLatestEventInfo(MainActivity.this"想念""好久不见,十分想念", pintent); 
  31.                  
  32.                 //发送通知  param1:要发送通知码  param2:通知 
  33.                 nm.notify(0, notif); 
  34.                  
  35.             } 
  36.         }); 
  37.     } 

main.xml的布局


  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:orientation="vertical" 
  4.     android:layout_width="fill_parent" 
  5.     android:layout_height="fill_parent" 
  6.     > 
  7. <Button   
  8.     android:id="@+id/send" 
  9.     android:layout_width="wrap_content"  
  10.     android:layout_height="wrap_content"  
  11.     android:text="@string/send" 
  12.     /> 
  13. </LinearLayout> 

strings.xml


  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <resources> 
  3.     <string name="hello">Hello World, MainActivity!</string> 
  4.     <string name="app_name">notification应用</string> 
  5.     <string name="send">发送通知</string> 
  6. </resources> 

AndroidManifest.xml


  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
  3.       package="com.gem.activity" 
  4.       android:versionCode="1" 
  5.       android:versionName="1.0"
  6.     <application android:icon="@drawable/icon" android:label="@string/app_name"
  7.         <activity android:name=".MainActivity" 
  8.                   android:label="@string/app_name"
  9.             <intent-filter> 
  10.                 <action android:name="android.intent.action.MAIN" /> 
  11.                 <category android:name="android.intent.category.LAUNCHER" /> 
  12.             </intent-filter> 
  13.         </activity> 
  14.  
  15.     </application> 
  16.     <uses-sdk android:minSdkVersion="8" /> 
  17.  
  18. </manifest>  

效果图如下