Android 多媒体

1.通知
通知一般使用NotificationManger来进行管理,使用Context的getSystemService()来获取

NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

但是安卓各个版本的api不稳定在通知上尤其明显,所以我们一般使用support库里的NotificationCompact类

Notification notification = new NotificationCompat.Builder(context).build();
Notification notification = new NotificationCompat.Builder(context)
        .setContetTitle("This is content title).build();

然后我们调用NotificationManager的notify方法就可以让通知显示出来,notify方法接受两个参数,一个是id,一个是Notification对象

manager.notify(1,notification);

这样子我们就把创建通知的每一步分析完了,这样子就可以创建一个通知,但是当你点击这个通知的时候你会发现没有跳转,没有任何反应,这样子我们需要PendingIntent,這类似于一个延迟通知,只有用户做了某件事他才会去做,他有三个方法用来得到PendingIntent实例,根据需求有getActivity(),getBroadcast(),getService(),参数基本相同,第一个是Context,第二个基本传入0,第三个是一个Intent对象,第四个是确定PendingIntent行为,有四种参数可选,一般传入0就可以了。

Intent intent = new Intent(this,NotificationActivity.class);
PendingIntent pi = PendingIntent.getActivity(this,0,intent,0);
Notification notification = new NotificationCompat.Builder(this).setContentIntent(pi).build();

但是点击完通知并没有消失,有两种方法可以让他消失,一种就是在Builder中设置setAutoCancel(true),第二种就是代码中

NotificationManger manager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
manager.cancel(1);

这个一就是我们之前设置的id号
同时通知可以设置声音,震动,闪烁

Notification notification = new NotificationComapt.Builder(this)
        .....
        .setSound(Uri.fromFile(new File("/dddd")))
        .setVibrate(new long[]{0,1000,1000,1000})//需要在AndroidManifest中声明权限
        .setLights(Color.GREEN,1000,1000)
        .setDefualts(NotificationCompat.DEFAULT_ALL)

为了显示长文本或者大图,就需要使用到setStyle()这个方法了
这里写图片描述

2.调用摄像头拍照
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
从相册中选择图片
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值