notification應該是android手機專屬的一個特性吧,至少我用過的手機好像其他的系統都沒有這個東西,呵呵,如果其他的手機有的話,麻煩大家說聲。可以簡單的使用notification來顯示一條通知,也可以使用notification來做一些其他的事情,比如開啟另外一個Activity。
這個圖片做的有點醜,我看有些部落格上的圖片做的很流暢,而且連滑鼠點擊的動作都有,我不知道那是怎麼做出來的,希望有知道的能夠指點一下,先謝啦!
使用notification開啟另一個activity,只需為setlatestEventInfo方法指定一個PendingIntent即可。
public class NotificationTest extends Activity{static final int NOTIFICATION_ID = 0x1123;@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);//擷取應用介面中的Button對象Button bn = (Button) findViewById(R.id.bn);//為按鈕的單擊事件綁定事件監聽器bn.setOnClickListener(new View.OnClickListener(){@Overridepublic void onClick(View source){//建立一個啟動其他Activity的IntentIntent intent = new Intent(NotificationTest.this, OtherActivity.class);PendingIntent pi = PendingIntent.getActivity(NotificationTest.this, 0, intent , 0);//建立一個NotificationNotification notify = new Notification();//為Notification設定表徵圖,該表徵圖顯示在狀態列notify.icon = R.drawable.notify;//為Notification設定常值內容,該文本會顯示在狀態列notify.tickerText = "啟動其他Activity的通知";//為Notification設定發送時間notify.when = System.currentTimeMillis();//為Notification設定聲音notify.defaults = Notification.DEFAULT_SOUND;//為Notification設定預設聲音、預設震動、預設閃光燈notify.defaults = Notification.DEFAULT_ALL;//設定事件資訊notify.setLatestEventInfo(NotificationTest.this, "燕姿來啦~","點擊查看", pi);//擷取系統的NotificationManager服務NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);//發送通知notificationManager.notify(NOTIFICATION_ID, notify);}});Button del = (Button)findViewById(R.id.del);del.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){//擷取系統的NotificationManager服務NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);//取消通知notificationManager.cancel(NOTIFICATION_ID);}});}}
這個notification使用了系統的閃光燈和震動器,所以不要忘了為程式配置許可權。
<!-- 添加操作閃光燈的許可權 --> <uses-permission android:name="android.permission.FLASHLIGHT" /> <!-- 添加操作震動器的許可權 --> <uses-permission android:name="android.permission.VIBRATE" />