Android学习-运用手机多媒体

提供了一系列的API,使得我们可以在程序中调用很多的多媒体资源,从而编写出更加丰富多彩的应用程序 。
使用通知
通知()是系统中比较有特色的一个功能,当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以借助通知来实现 。发出一条通知后,手机最上方的状态栏会显示一个通知的图标,下拉状态栏后可以看到通知的详细内容 。的通知功能获得了大量用户的认可和喜爱,就连IOS系统也在5.0版本之后加入了类似的功能 。
通知的基本用法
通知的用法比较灵活,既可以在活动里创建,也可以在广播接收器里创建,也可以在服务里创建 。像比如广播接收器与服务,在活动里创建的通知的场景还是比较少的,因为一般只有当程序进入到后台的时候我们才需要使用通知 。
不过,无论是在那里创建通知,整体的步骤都是相同的 。
首先需要一个来对通知进行管理,可以调用的方法获取到 。方法接受一个字符串参数用于确定获取系统的哪个服务,这里我们传入.即可,因此,获取的实例就可以写成
接下来需要使用一个的构造器来创建对象,但问题在于,几乎系统的每一个版本都会对通知这部分功能进行或多或少的修改,API不稳定性问题再通知上面突显的尤其严重 。那么该如何解决这个问题呢?其实就是使用库中提供的兼容API 。-v4库中提供了一个类,使用这个类的构造器来创建对象,就可以保证我们的程序在所有系统版本上都能正常工作了,代码如下
上述代码只是创建了一个空的对象,并没有实际作用,我们可以在最终的build方法之前连缀任意多的设置方法来创建一个丰富的对象,先看一些最基本的设置:
上述代码一共调用了五个方法 。
方法用于指定通知的标题内容
方法用于指定通知的正文内容,同样下拉系统状态栏就可以看到这部分内容 。
方法用于指定通知被创建的时间,以毫秒为单位,当下拉系统状态栏时,这里指定的时间会显示在相应的通知上
方法用于设置通知的小图标,注意只能使用纯alpha图层的图片进行设置,小图标会显示在系统状态栏上
方法用于设置通知的大图标,当下拉系统状态栏时,就可以看到设置的大图标了 。
以上工作都完成之后,只需要调用的方法就可以让通知显示出来了 。方法接受两个参数,第一个是参数id,要保证为每个通知所指定的id都是不同的 。第二个参数则是对象,这里直接将我们刚刚创建好的对象传入即可 。因此,显示一个通知就可以写成:
下面通过一个具体例子来看一看通知时什么样子的 。
新建一个项目,并修改,xml中的代码,如下
布局中只有一个send 按钮用于发出通知 。
接下来修改中的代码,如下:
上述进行了通知的创建,为了简单起见通知栏的大小图都直接设置成了
接下来实现通知的点击效果,还需要在代码中进行相应的设置,一个新的概念:
从名字上就可以看出就和有些类似,他们之间也确实存在着不少共同点 。比如他们都可以去指定一个“意图”,都可以用于启动活动、启动服务以及发送广播等 。不同的是更加倾向于去立即执行某个动作,而更加倾向于在某个合适的时机去执行某个动作 。所以,也可以把简单地理解为延迟执行的 。
的用法同样很简单,他主要提供了几个静态方法用于获取的实例,可以根据需求来选择是使用方法、方法还是方法 。这几个方法所接收的参数都是相同的 。,第一个参数依旧是 。第二个参数一般用不到,通常是都是传入0即可 。第三个参数是一个对象,我们可以通过这个对象构建出的“意图” 。第四个参数用于确定的行为,有、、和这四种值可以选,每种值的具体含义可以查看文档,通常情况下这个参数传入0就可以了 。