logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Exoplayer 扩展 FFmpeg 支持

使用软解,支持格式较多,可通过自编译so扩展格式。基本上是可以满足绝大多数的视频正常播放的,库里面默认的支持格式并不全,要解决问题需要重新编译出so文件,替换了原本的so就好了,流程也是非常的简单。可随着业务的发展,需要播放用户的音视频,随之而来的就是出现了不支持的音视频格式,这下好玩了。的开源项目直接使用,正常来说,是没啥问题的。上去看了下,上次的更新维护时间已经是两年前了,,从而得到更多的格式

文章图片
#android
性能优化-内存泄露常见例子

之前说了内存泄漏和检测工具,这里就记录一下常见的内存泄露有哪些前言在举例子以前,需要明白两个概念内存泄露(Memory Leak):某些对象已经不再使用,但仍然直接或间接的被引用到GC ROOT中,此时GC没法对其进行回收,就造成了内存泄露内存溢出(OOM):当应用占用了大于虚拟机分配的内存空间时,会造成内存溢出静态变量引起的内存泄露当调用getInstance时,如果传入的con...

文章图片
#性能优化
NDK学习笔记-JNI的引用

JNI中的引用意在告知虚拟机何时回收一个JNI变量JNI引用变量分为局部引用和全局引用局部引用局部引用,通过DeletLocalRef手动释放对象原因访问一个很大的Java对象,使用之后还用进行复杂的耗时操作创建了大量的局部引用,占用了太多的内存,而且这些局部引用跟后面的操作没有关联性局部引用示例Java中存在native方法public native void localR...

文章图片
Red Hat Enterprise 6.5 在虚拟机上将系统语言修改为中文

Red Hat Enterprise 6.5在虚拟机上将系统语言修改为中文

文章图片
#服务器#linux#运维
高级UI-DrawerLayout侧滑

侧滑的方案有很多种,早期的开源SliddingMenu,以及后来的DrawerLayout以及NavigationView等都可实现侧滑效果,这里介绍的是DrawerLayout,下一节将介绍NavigationView原理DrawerLayout位于v4包,为了做到最低限度的兼容,使得更低版本的Android也可以使用这个侧滑效果其就是一个自定义的容器,继承自ViewGroup在解析Dr...

文章图片
so的封装和使用

背景在linux平台下,要实现函数的封装,一般采用的是so动态库的形式实现了函数的封装就意味着实现过程的隐藏可以实现跨平台和跨语言的使用实施步骤生成so动态库编写相应的c文件代码,实现函数功能,例如:int sum(int a, int b){return a + b;}使用gcc编译时添加-fPIC选项,生成位置无关代码(由于动态库在编译时候无法知道偏移地址...

文章图片
#windows
到底了