通知的發送一般是在手機接收到信息或是手機在后台的一項操作完成時用於提示用戶的一條信息,通知的實現分為以下三步:
- 創建通知管理器(NotificationManager)
- 創建通知(Notification)並填充構成通知的數據
- 使用通知管理器發送通知
通知發送的效果圖如下,第一張圖的左上角的三角形為收到通知時的提示圖標,第二張圖為下拉通知進行查看時的效果:
package cn.sunzn.notify; import android.R.drawable; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; public class MainActivity extends Activity { private NotificationManager manager; private Notification notification; private Intent intent; private PendingIntent contentIntent; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); } public void sendnotify(View view) { notification = new Notification(drawable.stat_sys_warning, "通知", System.currentTimeMillis()); intent = new Intent(getApplicationContext(), MainActivity.class); contentIntent = PendingIntent.getActivity(getApplicationContext(), 100, intent, 0); notification.setLatestEventInfo(getApplicationContext(), "通知標題", "通知正文", contentIntent); notification.flags = Notification.FLAG_AUTO_CANCEL; manager.notify(100, notification); } public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } }