Android開發筆記-訊息提示

內容說明:在Android系統狀態列上顯示訊息

資料來源:Google!Android 2手機應用程式設計入門第三版

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;

protected void showNotification() {
    NotificationManager barManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);  //呼叫系統服務

    Notification barMsg = new Notification(R.drawable.icon,
                "顯示狀態列訊息內容",
                System.currentTimeMillis()
    );          //設定狀態列訊息圖示、內容與送達時間
                //System.currentTimeMillis()為系統目前時間

    PendingIntent contentIntent = PendingIntent.getActivity(
        this,
        0,
        new Intent(this, main.class),
        PendingIntent.FLAG_UPDATE_CURRENT
    );  //使用者點擊時執行的動作
        //傳入目標內容、代碼(目前沒效用)、要執行的Activity、flags

        //FLAG_CANCEL_CURRENT:如果目標已經存在,關閉現有的,並開啟新的程序。
        //FLAG_NO_CREATE:如果目標不存在,回傳null。
        //FLAG_ONE_SHOT:目標只能被使用一次。
        //FLAG_UPDATE_CURRENT:如果目標已經存在,更新目標數據。
        //http://developer.android.com/reference/android/app/PendingIntent.html

    barMsg.setLatestEventInfo(
        this,
        "詳細資訊標題",
        "詳細資訊內容",
        contentIntent
    );  //設定詳細資訊內容

    barManager.notify(0, barMsg);   //送出barMsg訊息
}