视频日志之android的总结与思考
四月份开始学android,并着手做这个项目,腾讯面试实习忙了半个月没有再做最终铩羽而归。做到5月30日,做了一个交差版,停下了差不多一个月,这两天再捡起完善一点。
项目是做一个视频保存和分享的网站,是网盘和视频分享的结合。用户自拍视频记录生活点点滴滴,上传到服务器保存,可以随时下载,或者通过发送视频邮件与好友分享自己的自拍视频。
分为三端实现,PC端、web端、android端。我是负责android客户端的实现。
功能结构模块图:
对于拍摄这一块,着实让我纠结一段时间。原因就是我用的手机系统版本是2.2,使用createTemplefile 创建一个临时保存的文件,Mediarecorder调用相机录制视频,没有任何问题。但是自android4.0以上, 不再是在SD卡上创建一个临时文件,忘了在哪里创建临时文件了。结果就是在4.0上录制的时候崩溃了。
后来改了直接在目录下创建一个文件的方式。对视频输出格式使用MediaRecorder.setProfile方法,并且要私用CamcorderProfile.get()方法来获得一个Profile的示例。但是在2.2版本需要设置视频输出格式,编码参数。
因为服务器数据库设计的有问题,对于邮件这一块我暂时放弃,没怎么做。
还有一个问题,就是刷新数据问题,我对列表的数据进行修改,需要退出到主界面,再次进入列表才能刷新,因为我列表的数据都是从数据库中导出来的。过段时间完善是,这个我想开一个线程动态加载列表数据解决。
在这个项目上我没有用到service后台处理,这个是一个很失败的地方,上传过程中只能等待上传完毕才可以进行下一步操作。需要用到service的有上传视频。
另外一个就是像素太高的摄像头拍摄的视频太大了,用小米测试的时候10秒钟就有23M了。。。没有进行编码压缩,手机流量肯定消受不了,除非有wifi。
视频日志之android的总结与思考的更多相关文章
- Android插件化的思考——仿QQ一键换肤,思考比实现更重要!
Android插件化的思考--仿QQ一键换肤,思考比实现更重要! 今天群友希望写一个关于插件的Blog,思来想去,插件也不是很懂,只是用大致的思路看看能不能模拟一个,思路还是比较重要的,如果你有兴趣的 ...
- 监控、日志、APM整个监控体系思考 我为峰2014 简书作者 4.6092018-11-19 11:39打开App 序言
监控.日志.APM整个监控体系思考 我为峰2014 简书作者 4.6092018-11-19 11:39打开App 序言
- Android面试题《思考与解答》11月刊
又来更新啦,Android面试题<思考与解答>11月刊奉上. 说说View/ViewGroup的绘制流程 View的绘制流程是从ViewRoot的performTraversals开始的, ...
- 更新日志 - BugHD Android 客户端上线
当我们讨论 Bug 的时候,总是一脸愁容.尤其是移动应用的开发者,要应对用户可能在各种场景下使用 App 时产生的莫名崩溃. 为了更好地解决开发者的焦虑,BugHD Android 客户端上线了,高效 ...
- YOLO2:实时目标检测视频教程,视频演示, Android Demo ,开源教学项目,论文。
实时目标检测和分类 GIF 图: 视频截图: 论文: https://arxiv.org/pdf/1506.02640.pdf https://arxiv.org/pdf/1612.08242.pdf ...
- cocos2d-js 写日志log 查看日志log Android调试查看log
1 输出日志的方式,当然是cc.log了 2 如何查看日志? a)如果小程序可以先在浏览器上跑,例如用chrome,在控制台就可以看到输出的log: b)如果在真机上调试, ...
- Android OOM 引发的思考
一.为何会出现OOM 因为Android系统的硬件资源是相当有限的,而且分配给一个应用的资源更为有限,尤其是内存.当应用突然申请的内存大于允许的最大值的时候,就会出现OOM. 如果想要获取App的内存 ...
- 近期对招聘Android开发者的一些思考
公司要招聘Android开发者,故面试了大概十来个人.由于是小公司,所以来的人大多是90后,比較年轻.90后大概二十三四岁吧,从简历上看都写了一到两年的工作经验. 也由于是小公司,所以对工作经验这些没 ...
- html5--移动端视频video的android兼容,去除播放控件、全屏等
html5 中的video 在手机浏览器中的总结所有页面播放时, 如果选择全屏播放, 播放画面将浮动到屏幕的最上层 IOS 手机 自动播放 播放界面浮动文字 播放时是否自动全屏 能否嵌入在页面中播 ...
随机推荐
- Hibernate摘记
原理: 1.通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件2.由hibernate.cfg.xml中的<mapping reso ...
- 没有产品,没有用户的,绝对不要浪费时间去联系风投——没有过home run的创业人,想办法先做出产品,找到少量用户,没有任何销售成本
著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:Kuan Huang链接:http://www.zhihu.com/question/19641135/answer/1353 ...
- 中国市场 Android App 兼容性报告
由于手机操作系统的不同,以及操作系统版本之间的差异,使得真机测试这个过程尤其复杂,涉及终端.人员.工具.时间.管理等方面的问题,Android系统的设备因操作系统多样性和终端类型的庞杂,问题尤为复 ...
- eclipse中的两种Jre 及 Jre与Jdk的区别
分类: ——————————区分eclipse中的两种Jre———————- (Eclipse也是一个普通的Java程序,因此必须有一个JRE做为运行环境.如果你的机器上没有安装任何JRE(或者JDK ...
- hdu 5591 ZYB's Game
Problem Description ZYB played a game named NumberBomb with his classmates ,N] in mind,then players ...
- 嵌入式OS入门笔记-以RTX为案例:六.RTX的任务调度
嵌入式OS入门笔记-以RTX为案例:六.RTX的任务调度 上一篇笔记介绍了一些绕开排程器(或调度程序,scheduler)来进行时间管理的一些小方法.这一篇详细介绍RTX的任务调度原理. RTX主要有 ...
- JavaScript 的DOM操作
HTML DOM (文档对象模型) 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). HTML DOM 模型被构造为对象的树. Windows 对象操作 ...
- ContextMenuStrip 添加在窗体。点击右键不能显示问题解答
ContextMenuStrip控件,系统默认为点击菜单,使用时.需要与你的窗体绑定.如图所示,,form窗体上包括一个contextMenustrip信息.默认状态是无.所以在使用contextMe ...
- T-SQL开窗函数
开窗函数over() 用途一:排序order by ,row_number select *,RANK() over(order by english desc) from Score --根据英语成 ...
- 制作与使用静态链接库(.lib)文件
(一)制作.lib文件 (1)打开vs,选择“新建项目”,选择“Visual C++“,选择”Win32 控制台应用程序“. (2)点击”确定“,点击”下一步“,设置如下 (3)点击”完成“,然后就可 ...