Notification方法发送通知

Android-------Notification方法发送通知

 通知是Android系统的一种特色的功能,当某个app希望给用户提示信息,但是该app又不在运行在前台时,就可以利用通知。
发送一条通知后,手机上方的状态栏就会显示一个小图标,下拉状态栏,会显示通知的具体信息。

1.前端布局

2.后端设计

步骤:1.获取NotificationManger

   2.创建PendingIntent对象

   3.创建通知Builder对象

   4.设置参数

   4.使用NotificationManager发送通知

package com.example.day20190530;

//导包

扫描二维码关注公众号,回复: 6327377 查看本文章

import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public void NotificationActivity entends Activity implements onClickListener{

  private Button sendBtn;

  private Button cancelBtn;

  NotificationManager manager;

  @Orrvide

  protected void onCreat(Bundle savedInstanceState){

    super.onCreat(savedInstanceState);

    setContentView(R.layout.notification_activity);

    sendBtn=(Button)findViewById(R.id.button1);

    cancelBtn=(Button)findViewById(R.id.button2);

    sendBtn.setonClickListener(this);

    cancelBtn.setonClickListener(this);

  }

  @Ovrride

  public void onClick(View v){

    switc(v.getId){

    case R.id.button1:

      //获取系统通知管理对象

      manager=(NotificationManager) getSystemService(NOTIFICATION_SERVICE);

      //创建Intent

      Intent it=new Intent(this,OtherActivity.Class);

      //创建PendingIntent对象

      PendingIntent pending=PendingIntent.getActivity(this,0,it,PendingIntent.FALG_CANCLE_CURRETN);  

      //创建通知Builder对象

      NotificationBuilder builder=new Notification.Builder(NotificationActivity.this);

      builder.setSmallIcon(R.drawble.ic_launcher);//设置小图标

      builder.setContentTitle("通知");//通知标题

      builder.setContentText("今天天气真好");//通知内容

      builder.setTicker("来自于XXX的信息");

      //设置声音

      builder.setSounds(Uri.parse("android.resourse://"+getPackageName+"/"+R.raw.music));

      builder.setAutoCancel(true);//点击取消发送通知

      builder.setWhen(System.CurrentTimeMIills());//设置通知发送时间

      builder.setsetContentIntent(pending);//点击跳转到界面

      manager.notification(1,builder.getNotification());//显示通知

      break;

    case R.id.button2:

      manager.cancel(1);//取消通知

      break;

    }

  }

}

猜你喜欢

转载自www.cnblogs.com/zhulinglin/p/10960883.html