- 博客(9)
- 资源 (5)
- 收藏
- 关注
原创 Android 录音中的那些坑
每一个看似简单的功能背后,都是攻城狮们用汗水填起的坑,尤其在这么热的天。最近又邂逅了Android的录音模块,由于是前同事留下的代码,bug改得宝宝真是欲仙欲死。首先看下原始的实现:其中RecorderHelp中封装了MediaRecorder,录音这种耗时操作放在了AsyncTask中进行。其实并说不上这种设计有什么缺点,但在使用的过程确实虐心,下边是自己的实现。
2016-10-19 15:32:40
11767
1
原创 Android 关于数学的显示
近期在做Android端数学公式显示的功能,踩了不少坑,开发告一段落,拿出来记录一下。首先是Latex表达式(写法自行baidu),由于客户端不关心公式的生成,只需要渲染,所以重点在latex的解析。目前网上推荐的大部分是katex与mathJax,关于两者的区别不作赘述,katex由于性能高渲染快被优先使用,但同样其兼容性差,在解析失败时要进行引擎切换。但在阅读katex的源码之后发
2016-05-14 23:25:45
3356
转载 android scrollview 嵌套listview
需求出来的时候感觉挺奇葩的,本来想用header与footer做,但由于有以前同事写过的代码,进度又比较赶,只能重写下listview。关于scrollview嵌套listview的文章早就满天飞,但试过了一些解决方案后感觉并不完全有用,不管是重新测量每个item的高度来确定listview的整体高度,还是重写onMesure方法如下: protected void onMeasure(int
2016-01-14 15:32:30
678
原创 Android mqtt即时通讯方案
鼓捣了一个多月的即时通讯项目,暂时告一段落,其实对于Android的IM以前有用TCP做过,但仅限于文字与图片,新的项目加入了语音聊天,使用WebRTC相关的技术。此次通讯协议是MQTT,也是第一次接触,服务器端实现采用了Mosca,目前只是实现qos=1与qos=0的功能。Android端用到的MQTT库是eclipse提供的paho,不过他给出的Demo里有好多坑,修改之后,用起来还算稳定
2015-12-14 15:20:00
7881
原创 Java文件读写
public static void readFile(String path){ File file = new File(path); if( !file.exists()){ return; } try { FileInputStream fis=new FileInputStream(file); byte []buffer = new byte[1024
2015-09-30 16:14:15
589
原创 小试jni
1.Eclipse新建一个Android工程,右键Properties->Builder->New Builder(Program),弹出Builder的对话框。2.Bulder的名字可以随意,Location为ndk-build.cmd的路径,Working Directory为当前工程,可在Browse中选择也可填写项目绝对路径。3.切换到TAB,如下4.切换至Builde
2015-09-29 16:26:17
592
原创 Android 悬浮组件
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl B 斜体 Ctrl I 引用 Ctrl
2015-02-09 10:18:59
674
原创 Android实时语音聊天
近些天一直在做利用RTMP实现实时语音聊天的Android聊天室,中间遇到不少问题,终于有时间记录一下。1.关于RTMPRTMP协议不必多说。http://www.cnblogs.com/haibindev/archive/2011/12/29/2305712.html推荐下这哥们的一篇文章。2.由于聊天是在频道内进行的,所以需要一个服务器进行支持。Android向C++服务器发消息真
2014-12-11 10:19:07
5245
转载 vi下Makefile的自动生成
首先来说一个比较简单的编译Linux下C++的方法。我们在文本编辑器里写一个C的简单的程序(好像所有学习C或者C++的书都会出现)代码:#include int main(){ printf("Hello,World!\n"); return 0;}现在存盘为Hello.c,打开你的终端,并在文件当前目录输入:代码:g++ Hel
2014-03-04 11:49:13
2089
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人