通知:显示在手机的通知栏上
通知的基本用法:
1 创建一个NotificationManager 对通知进行管理
NotificationManager manager =
(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
2 创建Notification
Notification notification = new NOtification
(R.drawable.icon,”This is tiket text”,System.currentTimeMills());
3 对通知的布局进行设定
notification.
setLatestEventInfo(context,”This is Title”,”This is content”,null);
4 让通知显示出来 ,第一个参数为一个任意id
manager.notify(1,notification);
案例:
public class MianActivity extends Activity implements OnClickListener{
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button sendNotice = (Button)findViewById(R.id.send_button);
sendNotice.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.send_button:
//创建通知管理器
NotificationManager notificationManager = (NotificationManager)
getSystemService(NOTIFICATION_SERVICE);
//创建通知对象
Notification notification = new Notification(R.drawable.ic_launcher, "This is ticker text",
System.currentTimeMillis());
Intent intent = new Intent(MianActivity.this,NotificationActivity.class);
//相当于通知中的Intent,点击通知就会传送至NotificationActivity.class
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent,
PendingIntent.FLAG_CANCEL_CURRENT);
notification.setLatestEventInfo(this, "This is the Title", "This is the Text", pendingIntent);
//高级功能
//声音
Uri soundUri = Uri.fromFile(new File("/system/media/audio/ringtones/nubia_mile.ogg"));
notification.sound=soundUri;
//震动
long[] vibrates = {0,1000,1000,1000};
notification.vibrate=vibrates;
//颜色
notification.ledARGB=Color.GREEN;
notification.ledOnMS=1000;
notification.ledOffMS=1000;
notification.flags=Notification.FLAG_SHOW_LIGHTS;
//默认声音led 震动 颜色效果
// notification.defaults=Notification.DEFAULT_ALL;
notificationManager.notify(1,notification);
break;
default:
break;
}
}
}
public class NotificationActivity extends Activity {
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.notification_layout);
NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
notificationManager.cancel(1);
//notificationManager.notify(1,notification);
}
}