您现在的位置是:主页 > news > 长沙网络营销介绍/深圳优化公司哪家好
长沙网络营销介绍/深圳优化公司哪家好
admin2025/6/14 0:42:48【news】
简介长沙网络营销介绍,深圳优化公司哪家好,丽水市建设监理协会网站在哪里,临潼城市建设局网站Android多媒体使用一、通知二、调用摄像头和相册三、播放多媒体文件1.播放音频2.播放视频四、Kotlin:infix函数五、Git进阶一、通知 1.创建通知的通道 val channel NotificationChannel("normal","Normal",NotificationManager.IMPORTANCE_DE…
Android多媒体使用
- 一、通知
- 二、调用摄像头和相册
- 三、播放多媒体文件
- 1.播放音频
- 2.播放视频
- 四、Kotlin:infix函数
- 五、Git进阶
一、通知
1.创建通知的通道
val channel = NotificationChannel("normal","Normal",NotificationManager.IMPORTANCE_DEFAULT)
//第一个参数是渠道id,第二个是渠道名称,第三个是通知的重要等级
2.创建一个通知的管理器
val manager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
//这个全局只需要创建一次,也只会执行一次,主要是管理通知的
3.将通知放入管理中
manager.createNotificationChannel(channel)
//将通知渠道放入管理器中
4.设置通知的各种属性
val notification = NotificationCompat.Builder(this,"important").setContentTitle("This is a content tit").setContentText(("This is a content textThis " )).setSmallIcon(R.drawable.icon).setLargeIcon(BitmapFactory.decodeResource(resources,R.drawable.large_icon)).setContentIntent(pi) .setStyle(NotificationCompat.BigPictureStyle().bigPicture(BitmapFactory.decodeResource(resources,R.drawable.large_icon))).build()
//这些属性其实都是比较简单的,可以自己通过查找相关的文档扩展更多
5.将通知显示出来
manager.notify(1,notification)
//第一个参数是id,第二个是notification的实例
二、调用摄像头和相册
这里面由于涉及Android权限相关的问题,根据各个版本的迭代的不同,有不同的处理方法,这里讲一下遇到的一个坑
需要利用sd卡的应用关联目录,这样不需要申请权限,利用到了contentProvider访问相机程序,这里郭霖大神有一篇
相关的文章可以进行参考,关于Android10.0的作用域储存,链接如下
https://mp.weixin.qq.com/s/_CV68KeQolJQqvUFo10ZVw
Android8.0以上使用关联目录需要加入以下声明到AndroidManifest的application中,不然可能报错
android:requestLegacyExternalStorage="true"
这里同样涉及一些图片压缩技术,需要今后的深入学习
三、播放多媒体文件
1.播放音频
使用MediaPlayer类实现的各种操作
asset目录下可以存放任何文件和目录,利用AssetManager进行读取文件
其他操作比较简单
2.播放视频
由于asset目录下的视频不能被videoView播放,所以我们在res目录下新建一个raw目录,然后再里面放我们的视频
采用Uri解析的方法找到视频的播放地址,其他的与音频播放差不多,不过有一点比较奇怪的是不能播放声音
四、Kotlin:infix函数
使用infix函数可以使得代码的可读性大大提高,它其实只是将编程语言的语法规则调整了一下而已
举个栗子
//在infix.kt文件加入这句
infix fun String.beginsWith(prefix: String) = startsWith(prefix)
//然后调用的时候就变成了
if ("hello world" beginsWith "hello")
{println("hello")
}
//原来应该是这样调用的
if ("hello world".startsWith"hello")
{println("hello")
}
五、Git进阶
.gitignore文件可以将指定目录或者文件排除于版本控制之外,可以使用通配符*
1.查看修改内容
git status
2.查看更改的具体内容
git diff
如果只想看指定内容加上路径即可
3.撤销未提交的内容
git checkout 文件路径
4.对于已经添加的内容,需要先取消添加的文档后才可以撤销
git reset HEAD 文件路径
然后就可以撤销了
5.查看历史提交信息
git log
查看具体的可以在log后加上指定id(一般是一串比较长的字母数字组成)
git log -1
查看最后一条提交,同理-2倒数第二次提交