双击退出
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if (System.currentTimeMillis() - exitTime > 2000) {
Toast.makeText(this, "再次点击退出", Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
return true;
} else {
finish();
}
}
return super.onKeyDown(keyCode, event);
}
Notitfcation 通知
private Button send;
send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(MainActivity.this);
builder.setContentTitle("我是标题");
builder.setContentTitle("我是内容");
builder.setDefaults(Notification.DEFAULT_ALL);
builder.setSmallIcon(R.drawable.ic_launcher_background);
Notification build = builder.build();
manager.notify(1, build);
}
});
自定义通知
customId = (Button) findViewById(R.id.custom_id);
customId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(MainActivity.this);
builder.setSmallIcon(R.drawable.ic_launcher_background);
builder.setContentTitle("这是标题");
builder.setContentText("这是内容");
RemoteViews remoteViews = new RemoteViews(getPackageName(), R.layout.layout_remote);
remoteViews.setTextViewText(R.id.text_id, "滴滴滴滴");
remoteViews.setImageViewResource(R.id.img_id, R.mipmap.ic_launcher);
builder.setCustomContentView(remoteViews);
Notification build = builder.build();
manager.notify(1, build);
}
});
分组通知
sendgroupId = (Button) findViewById(R.id.sendgroup_id);
sendgroupId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification.Builder builder1 = new Notification.Builder(MainActivity.this);
Notification.Builder builder2 = new Notification.Builder(MainActivity.this);
Notification.Builder builder3 = new Notification.Builder(MainActivity.this);
builder1.setGroup("2");
builder1.setGroupSummary(true);
builder1.setSmallIcon(R.drawable.ic_launcher_background);
builder1.setContentTitle("我是标题");
builder1.setContentText("我是内容");
builder1.setDefaults(Notification.DEFAULT_ALL);
builder2.setGroup("2");
builder2.setGroupSummary(true);
builder2.setSmallIcon(R.drawable.ic_launcher_background);
builder2.setContentTitle("我是标题2");
builder2.setContentText("我是内容2");
builder2.setDefaults(Notification.DEFAULT_ALL);
builder3.setGroup("2");
builder3.setSmallIcon(R.drawable.ic_launcher_background);
builder3.setContentTitle("我是标题3");
builder3.setContentText("我是内容3");
builder3.setDefaults(Notification.DEFAULT_ALL);
manager.notify(1, builder1.build());
manager.notify(2, builder2.build());
manager.notify(3, builder3.build());
}
});
进度条通知
proressId = (Button) findViewById(R.id.proress_id);
proressId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
final Notification.Builder builder = new Notification.Builder(MainActivity.this);
builder.setSmallIcon(R.drawable.ic_launcher_background);
builder.setContentTitle("这是标题");
builder.setContentText("这是内容");
final Timer timer = new Timer();
timer.schedule(new TimerTask() {
int index;
@Override
public void run() {
builder.setContentText("正在下载,当前进度" + index);
builder.setProgress(100, index, false);
index += 10;
manager.notify(2, builder.build());
if (index == 100) {
builder.setContentText("正在安装,请稍后");
builder.setProgress(0, 0, true);
manager.notify(2, builder.build());
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
manager.cancel(2);
timer.cancel();
}
}
}, 0, 1000);
}
});
点击通知跳转
turnId = (Button) findViewById(R.id.turn_id);
turnId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(MainActivity.this);
builder.setSmallIcon(R.drawable.ic_launcher_background);
builder.setContentTitle("这是标题");
builder.setContentText("这是内容");
Intent intent = new Intent(MainActivity.this, Main2Activity.class);
PendingIntent activity = PendingIntent.getActivity(MainActivity.this, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
builder.setContentIntent(activity);
builder.setAutoCancel(true);
builder.setPriority(Notification.PRIORITY_MAX);
builder.setDefaults(Notification.DEFAULT_ALL);
Notification build = builder.build();
manager.notify(1, build);
}
});