package us.guaju.notification;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private static final int TAG = 8888;
protected static final int REQUESTCODE = 0;
private Button send_notification, clear;
private NotificationManager notificationManager;
private Notification notificastion;
private int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
send_notification = (Button) findViewById(R.id.send_notification);
clear = (Button) findViewById(R.id.clear);
notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
// 点击button发送通知
send_notification.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Notification.Builder builder = new Notification.Builder(
MainActivity.this);
builder.setContentTitle("我是通知");
builder.setContentText("我是通知内容");
builder.setContentInfo("我是通知附加信息" + count);
// 创建一个普通的意图,为下方的pendingIntent做准备
Intent intent = new Intent();
intent.setAction(Intent.ACTION_DIAL);
// 创建pendingIntent 传入上文定制好的意图
PendingIntent pendingIntent = PendingIntent.getActivity(
MainActivity.this, REQUESTCODE, intent,
Intent.FLAG_ACTIVITY_NEW_TASK);
// 如此点击完成后会跳转到拨号界面
builder.setContentIntent(pendingIntent);
builder.setSmallIcon(R.drawable.ic_launcher);
notificastion = builder.getNotification();
count++;
notificationManager.notify(TAG, notificastion);
}
});
clear.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
notificationManager.cancelAll();
}
});
}
}
如果有不懂的可以直接查看developer.android.com去学习。此篇文章基本能满足日常需要
notification android原生消息通知代码详解
最新推荐文章于 2024-08-04 16:46:39 发布