步骤:

  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. JAVASE02-Unit05: 集合操作 —— 查找表

    Unit05: 集合操作 -- 查找表 使用该类测试自定义元素的集合排序 package day05; /** * 使用该类测试自定义元素的集合排序 * @author adminitartor * ...

  2. Spring操作指南-针对JDBC配置声明式事务管理(基于XML)

  3. c++的一个有趣的程序

    最近在作一个实验题:输出一个点移动一个点.如果大神们有更简单的方法,请指点. 这个是成果,很有趣 望大神们指点一二: #include<iostream>#include<stdli ...

  4. Mac下搭建git

    一.在本地git库中添加用户名及邮箱 git config --global user.name "username" git config --global user.email ...

  5. 论文阅读(Weilin Huang——【TIP2016】Text-Attentional Convolutional Neural Network for Scene Text Detection)

    Weilin Huang--[TIP2015]Text-Attentional Convolutional Neural Network for Scene Text Detection) 目录 作者 ...

  6. CentOS7上部署MONO和Jexus

    一:安装MONO 首先通过putty连接上linux,我这里的linux版本为CentOS,连上后首先执行: rpm --import "http://keyserver.Ubuntu.co ...

  7. iOS Bundle display name国际化

    iOS app包显示名称可以国际化,具体方法如下: 编辑Info.plist,添加一个新的属性:Application has localized display name,设置该属性的类型为bool ...

  8. 20160113第一个ANDRIOD开发日志

    今天开发了第一个andriod程序,测试录音和播放功能.源码是网上抄来的. 代码: unit Unit2; interface uses   System.SysUtils, System.Types ...

  9. UNION和UNION ALL

    UNION 用于合并两个或多个 SELECT 语句的结果集,并消去表中任何重复行.UNION 内部的 SELECT 语句必须拥有相同数量的列,列也必须拥有相似的数据类型.同时,每条 SELECT 语句 ...

  10. OJ生成器(一)制作Online Judge前的准备和策划

    我这校区新的微机老师斗志昂扬,准备让我们这学校萎靡的信息技术竞赛重振雄风.然后有一次我半开玩笑地说建一个自己的OJ吧,老师也就鼓励我去做了. 开什么玩笑……!我可是马上要参加NOIP的人! 于是老师说 ...