通知栏的简单通知

首先随意扔两个按钮

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="send"
        />

    <Button
        android:id="@+id/button2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="cencle"
        />

</LinearLayout>

然后去设置主文件

package com.example.deemo;

import android.app.Activity;
import android.app.Notification;
import android.app.Notification.Builder;
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;

public class MainActivity extends Activity implements OnClickListener{
    NotificationManager manager;//通知控制类(为了取消)
    int notification_ID;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);//获取系统服务(为了取消)
        findViewById(R.id.button1).setOnClickListener(this);
        findViewById(R.id.button2).setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {//点击事件
        switch (v.getId()) {
        case R.id.button1:
            sendNotification();
            break;

        case R.id.button2:
            manager.cancel(notification_ID);//要取消的id
            break;
        }
    }
    /**
     *
     */
    private void sendNotification(){//发送方法
        Intent intents = new Intent(this,MainActivity.class); //构造转跳
        PendingIntent pintent = PendingIntent.getActivity(this, 0, intents, 0);//即将转跳,非及时
        Builder builder = new Notification.Builder(this);
        builder.setSmallIcon(R.drawable.ic_launcher);//设置图标
        builder.setTicker("嘿嘿嘿");//手机状态栏提示
        builder.setWhen(System.currentTimeMillis());//设置时间
        builder.setContentTitle("我是一个标题");
        builder.setContentText("我是一个通知内容");
        builder.setContentIntent(pintent);//点击后的意图
        builder.setDefaults(Notification.DEFAULT_LIGHTS);//设置指示灯
        builder.setDefaults(Notification.DEFAULT_SOUND);//设置提示声音
        builder.setDefaults(Notification.DEFAULT_VIBRATE);//设置震动
        Notification notification = builder.build();//4.1以上
        //4.1以下用builder.getNotification();

        manager.notify(notification_ID,notification);//取消,id为对应notification的id
    }

}

比如震动,提示灯要用系统权限,

android.permission.FLASHLIGHT

android.permission.VIBRATE

记得在AndroidManifest设置

时间: 2024-12-17 06:43:14

通知栏的简单通知的相关文章

一个简单通知服务的开发和搭建

系统主要是为了实现一个消息入口,多个服务能够接受处理.增加和删除消息处理服务通过订阅和取消订阅实现,尽量做到低耦合. 1.消息入口服务 消息入口服务采用支持跨平台的webService实现,该服务负责管理当前订阅的服务以及分发消息的管理.为了保证服务的及时响应,消息接收后直接存入队列,如果涉及到编码或者过滤的话,目前个人的思路放在队列后边,大量消息的处理可能会让消息堵塞,所以尽量让队列做下缓冲. 2.消息处理服务 消息处理服务均采用wcf实现,所有的服务均需实现统一的接口,入口服务并不等待处理服

Android---60---Notification 通知栏的简单使用

Notification是显示在手机状态栏的通知 通过Notification.Builder类创建Notification对象. Notification.Builder常用方法: setDefaults ():设置通知LED灯.音乐.振动等 setAutoCancle():设置点击通知后,状态栏自动删除通知 setContentTitle():设置通知标题 setContentText():设置通知内容 setSmallcon():设置小图标 setLargecon():设置大图标 setT

Android学习--使用通知

通知 安卓和苹果一样,在App进去后台之后,当你需要给客户发送一些消息提醒之类的东西就得使用到通知这个东西,安卓中的通知显然是要比苹果的简单一点,苹果的在通知这方面主要展示在远程推送和本地通知上面,这里我们就简单的说说安卓的本地的通知的以及基本的展示,远程推送的东西在后面涉及到的时候再做总结,先看看下面这个的一个运行效果图,这是我在自己的安卓测试机上看到的效果,其他的就没什么说的,代码中需要注意的东西在代码注释记录的很清楚,就直接上代码: 通知 // 这里注意一下PendingIntent和In

Android实现点击通知栏后,先启动应用再打开目标Activity

情况简述 在开发Android app的过程中,遇到这样一个需求:app中启动一个Service,该Service在独立进程中运行,与服务器保持长连接,将服务器推送过来的消息在通知栏中显示,并设置点击动作,点击后跳转到app中对应的Activity.目前遇到的问题是Service以独立进程运行,在收到消息并弹出通知后,app本身的进程有两种情况: app正在运行 app已退出 对于第一种情况,处理就非常简单了,直接将参数传入Intent并打开对应的Activity即可. 但第二种情况比较复杂,因

通知 Notification 详解

效果 通知栏-刚收到通知时 通知栏-收到通知几秒后 标准视图 大视图-下滑前是标准视图 大视图-下滑后显示大视图 自定义通知 讲解 Notification,俗称通知,是一种具有全局效果的通知,它展示在屏幕的顶端,首先会表现为一个图标的形式,当用户向下滑动的时候,展示出通知具体的内容. 注意:因为一些Android版本的兼容性问题,对于Notification而言,Android3.0是一个分水岭,在其之前构建Notification推荐使用Notification.Builder构建,而在An

Android通知Notification全面剖析

通知 通知是您可以在应用的常规 UI 外部向用户显示的消息.当您告知系统发出通知时,它将先以图标的形式显示在通知区域中.用户可以打开抽屉式通知栏查看通知的详细信息. 通知区域和抽屉式通知栏均是由系统控制的区域,用户可以随时查看. 图 1. 通知区域中的通知. 图 2. 抽屉式通知栏中的通知. 注:除非特别注明,否则本指南均引用版本 4 支持库中的 NotificationCompat.Builder 类.Android 3.0(API 级别 11)中已添加类 Notification.Build

Notifications(通知)

通知 通知是能在应用的普通用户界面外显示给用户的一种消息. 当你告诉系统公布一条通知时,它首先在通知栏中表现为一枚图标. 用户打开通知抽屉后就能查看通知的细节了. 通知栏和通知抽屉都是由系统控制的区域,用户能够不论什么时间都能查看他们. 图1. 在通知栏里的通知. 图2. 在通知抽屉里的通知. 通知的设计 通知,作为Android用户界面里的很重要的一部分有着它自己的设计指南.阅读Android设计指南 Notifications 学习怎样设计通知和它们的交互. 注解:除非特别指明,指南里引用的

Android 通知栏Notification的整合 全面学习 (一个DEMO让你完全了解它)

在android的应用层中,涉及到很多应用框架,例如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架,通知机制,ActionBar框架等等. 下面就来说说经常会使用到通知机制中的通知栏框架(Notificaiton),它适用于交互事件的通知.它是位于顶层可以展开的通知列表.它会时不时的提醒你什么软件该更新了,什么人发你微信消息了等. (网上看了下,全面介绍的文章不多,所以就萌生了写这篇的念头,随便当作回顾笔记.下面我就通过官方文档.源代码

Android 通知栏Notification的整合 全面学习 (一个DEMO让你全然了解它)

在android的应用层中.涉及到非常多应用框架.比如:Service框架,Activity管理机制,Broadcast机制.对话框框架.标题栏框架,状态栏框架.通知机制,ActionBar框架等等. 以下就来说说常常会使用到通知机制中的通知栏框架(Notificaiton).它适用于交互事件的通知.它是位于顶层能够展开的通知列表. 它会时不时的提醒你什么软件该更新了,什么人发你微信消息了等. (网上看了下,全面介绍的文章不多,所以就萌生了写这篇的念头.随便当作回想笔记. 以下我就通过官方文档.