步骤:

  1、调用getSystemService()获取NotificationManager:NotificationManager manager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);

  2、创建Notification对象:Notification notification = new Notification(R.drawable.icon,"This is ticker text",System.currentTimeMillis());

  3、创建布局:用builder的一系列相关方法替代,必要的属性包括setContentTitle()、setCotentText()、setSmallIcon()

  4、显示通知:调用notify():manager.notify(1,notification);

实现点击效果:pendingIntent,在某个合适的时机去执行某个动作

  创建对象:getActivity()、getBroadcast()、getService()

 ......
Intent intent = new Intent(this,NotificationActivity.class);
PendingIntent pi = PendingIntent.getActivity(this,0,intent,PendingIntent,FLAG_CANCEL_CURRENT);
Notification.setLatestEcentInfo(this,"This is conent title","This is content text",pi);

取消通知:调用NotificationManager的cancel():NotificationManager manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);

                        manager.cancel(1);

通知的高级技巧:

  1、sound:Uri soundUri = Uri.fromFile(new File("/system/media/audio/ringtones/Baseic_tone.ogg"));

     notification.sound = soundUri;

  2、vibrate(震动,需要声明权限):long[] vibrates = {0,1000,1000,1000};  //立刻震动1秒,静止1秒,再震动1秒

             notification.vibrate = vibrates;

  3、ledARGB、ledOnMS、ledOffMS、flag(led灯)

收发短信:

  收短信:1、创建广播接收器  2、注册  3、声明权限  

  发短信:1、设置监听器  2、声明权限

  超出长度:调用SMSManager的sendMultipart-TextMessage()

调用摄像头:

  1、创建一个File对象,并将拍下的照片存储在SD卡中:File outputImage = new File(Environment.getExternalStorageDirectory(),"名称");

  2、将File对象转化为Uri:imageUri = Uri.formFile(outputImage);

  3、通过intent保存Uri地址:Intent.putExtra(MediaStore.EXTRA_OUTPUT,imageUri);

  4、调用startActivityForResult(intent,TAKE_PHOTO)启动相机

  5、在onActivityResult()中裁剪图片:通过intent对象,并调用startActivityForResult(intent,CROP_PHOTO)启动裁剪程序

  6、通过BitmapFactory的decodeStream()方法将照片解析成Bitmap对象

  7、设置到ImageView中显示:setImageBitmap(bitmap)

从相册中选择:

  在startActivityForResult(intent,CHOOSE_PHOTO)中打开相册,并判断手机系统版本,如果4.4以上解析封装过Uri;如果是4.4以下直接传入Uri到getImagePath()即可。之后再调用displayImage()显示图片。

播放音频:MediaPlayer

  方法:setDataSource()、prapare()、start()、pause()、reset()、seekTo()、stop()、release()、isPlaying()、getDuration()

  步骤:1、创建MediaPlayer对象  

     2、调用setDataSource()设置文件路径

     3、调用prepare()进入准备状态

     4、调用start()方法播放

     5、调用pause()暂停播放

     6、调用reset()停止播放

播放视频:VideoView

  方法:setVideoPath()、start()、pause()、resume()、seekTo()、isPlaying()、getDuration()

通知Notification的更多相关文章

  1. 浏览器桌面通知Notification探究

    首先说明,这篇博文不是科普讲解的,而是立flag研究的,是关于浏览器消息自动推送,就是下面这个玩意: 最近常常在浏览器看到这样的消息推送,还有QQ.com的推送,现在我对这个不了解,不知道叫消息自动推 ...

  2. iOS的通知Notification

    这里是不同的对象之间的通知, 不是本地通知. 一开始玩, 很挠头, 后来发现原来只是对象init的过程出了问题. 首先, 新建一个简单的单controller的工程. 然后打开它的ViewContro ...

  3. 通知 Notification 详解

    效果 通知栏-刚收到通知时 通知栏-收到通知几秒后 标准视图 大视图-下滑前是标准视图 大视图-下滑后显示大视图 自定义通知 讲解 Notification,俗称通知,是一种具有全局效果的通知,它展示 ...

  4. 发送通知:Notification

    Intent的主要功能是完成一个Activity跳转到其他Activity或者是Service的操作,表示的是一种 操作的意图. PendingIntent表示的是暂时执行的一种意图,是一种在产生某一 ...

  5. Android简易实战教程--第三十八话《自定义通知NotifiCation》

    上一篇小案例,完成了一个普通的通知,点击通知启动了一个活动.但是那里的通知没有加入些"靓点",这一篇就给它加入自定义的布局,完成自定义的通知. 应用:比如QQ音乐为例,当点击音乐播 ...

  6. 适配 通知 Notification 通知渠道 前台服务 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. h5桌面通知Notification

    H5中的桌面通知Notification 前言: 对于一个前端开发者,逛网页总会留意一些新奇的功能,对于上班总会用到Teambition的我,总是能收到Notification...所以今天就来研究下 ...

  8. Phonegap 通知 Notification

    通知 Notification 一.notification.alert 对话框 notification.alert 响铃 notification.beep 震动 notification.vib ...

  9. Flutter学习笔记(35)--通知Notification

    如需转载,请注明出处:Flutter学习笔记(35)--通知Notification 通知的NotificationListener和我们之前写的事件的Listener一样,都是功能性的组件,而且也都 ...

  10. 轻松让HTML5可以显示桌面通知Notification非常实用

    使用Notification的流程 1.检查浏览器是否支持Notification2.检查浏览器的通知权限3.如果权限不够则申请获取权限4.创建消息通知5.展示消息通知 Notification AP ...

随机推荐

  1. LeetCode Find All Duplicates in an Array

    原题链接在这里:https://leetcode.com/problems/find-all-duplicates-in-an-array/ 题目: Given an array of integer ...

  2. Redis在Linux下的安装和启动和配置

    第一步:下载Redis安装包,下载版本:3.0.5 在所在目录右键打开终端输入命令: wget http://download.redis.io/releases/redis-3.0.5.tar.gz ...

  3. Linux -- objdump二进制文件比较

    objdump工具用来显示二进制文件的信息,就是以一种可阅读的格式让你更多地了解二进制文件可能带有的附加信息. 常用参数说明 -f 显示文件头信息 -D 反汇编所有section (-d反汇编特定se ...

  4. hduoj 1286 找新朋友

    http://acm.hdu.edu.cn/showproblem.php?pid=1286 找新朋友 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...

  5. html标签分两种:块状元素和内联元素

      块状元素一般是其它元素的容器,可以容纳内联元素和其它块状元素,独占一行,宽度和高度起作用.如div,p等标签属于块状元素.     内联元素只能容纳文本和其它内联元素,可与其它内联元素位于同一行, ...

  6. Linux Crontab 安装使用详细说明

    crontab命 令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供 之后读取和执行.通常,crontab ...

  7. C#调用windows API的一些方法

    使用C#调用windows API(从其它地方总结来的,以备查询) C#调用windows API也可以叫做C#如何直接调用非托管代码,通常有2种方法: 1.  直接调用从 DLL 导出的函数. 2. ...

  8. SQL语句处理一些修改、新增、删除、修改属性操作(MySql)

    方法一: 直接(手动)去修改数据库名称,数据库表名称,数据库列名称.列属性 方法二: 使用SQL语句去修改 -- 修改表名 ALTER TABLE tableName RENAME newTableN ...

  9. Struts2相关面试题

    Struts2面试题 1.struts2工作流程 Struts 2框架本身大致可以分为3个部分: 核心控制器FilterDispatcher.业务控制器Action和用户实现的企业业务逻辑组件. 核心 ...

  10. sqlserver数据库 Schema

    //读取数据库中所有的数据库 USE MASTER DECLARE @is_policy_automation_enabled bit SET @is_policy_automation_enable ...