Android

Chromium for android 编译注意事项

编译Chromium时默认是不支持MP3,MP4格式的,所以编译出来的版本是无法播放音频和视频的,如果要播放时,就会产生这样的error log: PIPELINE_ERROR DEMUXER_ERROR_NO_SUPPORTED_STREAM 如果需要对音视频进行支持的话,需要在args.gn文件中,增加如下的配置: proprietary_codecs = true ffmpeg_branding = "Chrome" 这样重新编译之后就可以播放视频了. google group讨论区原贴Does anyone know how Chrome for

  • LeeChen
    LeeChen
1 min read
Android

Android InputFilter的详细解析

InputFilter这个interface相信大家也不会陌生,任何对EditText的输入第一步就会经过它,而它的名字也十分的直白——输入过滤器.InputFilter只有一个方法,就是filter方法,而这个方法却对你的输入过滤有着至关重要的结果,我们现在看看google的官方文档是怎么描述这个filter方法的. This method is called when the buffer is going to replace the range dstart … dend of dest with the new text from the range start

  • LeeChen
    LeeChen
4 min read
Android

Could not read input channel file descriptors from parcel引发的句柄泄露问题

最近开发功能的时候monkey总是能跑出一个bug, java.lang.RuntimeException: Could not read input channel file descriptors from parcel. 百思不得其解,认为是系统上面的bug,实时证明自己还是太年轻.现在开始分析一下这个bug产生的原因. 一.为什么会产生句柄泄露? 众所周知Android是linux内核,也就是可以理解linux下,一切资源都是句柄,每个进程都有自己的句柄上限,而超过了这个句柄上线,就会发生异常.一般android的App都是在单个进程下运行的,FD的句柄上限是1024,这个在后面的会说明.一切的重点都在**proc(Processes,虚拟的目录,是系统内存的映射。

  • LeeChen
    LeeChen
5 min read