四月份开始学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的总结与思考的更多相关文章

  1. Android插件化的思考——仿QQ一键换肤,思考比实现更重要!

    Android插件化的思考--仿QQ一键换肤,思考比实现更重要! 今天群友希望写一个关于插件的Blog,思来想去,插件也不是很懂,只是用大致的思路看看能不能模拟一个,思路还是比较重要的,如果你有兴趣的 ...

  2. 监控、日志、APM整个监控体系思考 我为峰2014 简书作者 4.6092018-11-19 11:39打开App 序言

    监控.日志.APM整个监控体系思考 我为峰2014 简书作者 4.6092018-11-19 11:39打开App 序言

  3. Android面试题《思考与解答》11月刊

    又来更新啦,Android面试题<思考与解答>11月刊奉上. 说说View/ViewGroup的绘制流程 View的绘制流程是从ViewRoot的performTraversals开始的, ...

  4. 更新日志 - BugHD Android 客户端上线

    当我们讨论 Bug 的时候,总是一脸愁容.尤其是移动应用的开发者,要应对用户可能在各种场景下使用 App 时产生的莫名崩溃. 为了更好地解决开发者的焦虑,BugHD Android 客户端上线了,高效 ...

  5. YOLO2:实时目标检测视频教程,视频演示, Android Demo ,开源教学项目,论文。

    实时目标检测和分类 GIF 图: 视频截图: 论文: https://arxiv.org/pdf/1506.02640.pdf https://arxiv.org/pdf/1612.08242.pdf ...

  6. cocos2d-js 写日志log 查看日志log Android调试查看log

    1 输出日志的方式,当然是cc.log了 2 如何查看日志?        a)如果小程序可以先在浏览器上跑,例如用chrome,在控制台就可以看到输出的log:        b)如果在真机上调试, ...

  7. Android OOM 引发的思考

    一.为何会出现OOM 因为Android系统的硬件资源是相当有限的,而且分配给一个应用的资源更为有限,尤其是内存.当应用突然申请的内存大于允许的最大值的时候,就会出现OOM. 如果想要获取App的内存 ...

  8. 近期对招聘Android开发者的一些思考

    公司要招聘Android开发者,故面试了大概十来个人.由于是小公司,所以来的人大多是90后,比較年轻.90后大概二十三四岁吧,从简历上看都写了一到两年的工作经验. 也由于是小公司,所以对工作经验这些没 ...

  9. html5--移动端视频video的android兼容,去除播放控件、全屏等

    html5 中的video 在手机浏览器中的总结所有页面播放时, 如果选择全屏播放, 播放画面将浮动到屏幕的最上层 IOS 手机   自动播放 播放界面浮动文字 播放时是否自动全屏 能否嵌入在页面中播 ...

随机推荐

  1. Cacti完全使用手册 ( 让你快速个性化使用Cacti )

    I.总览                                              Cacti 和Nagios的监控体系可以说是使用广泛而且支持丰富的国内外的运维人员都需要掌握的一套监 ...

  2. RoHS认证简介

    RoHS认证是<电气.电子设备中限制使用某些有害物质指令>(The restriction of the use of certain hazardous substances in el ...

  3. Delphi 获取北京时间(通过百度和timedate网站)

    方法一: uses ComObj, DateUtils; function GetInternetTime: string; var XmlHttp: OleVariant; datetxt: str ...

  4. Android客户端与服务器交互中的token

    学习Token Token是什么? Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Tok ...

  5. ASP 代码当前记录集不支持更新问题的解决办法。

    错误类型: ADODB.Recordset (0x800A0CB3) 当前记录集不支持更新.这可能是提供程序的限制,也可能是选定锁定类型的限制. /Model/manage/Admin_Admin.a ...

  6. Mactype 解决字体出现剃尾

    使用mactype之后, 发现windows字体的效果改善了好多.但作为程序员, 天天和各种文本工具打交道.最近发现PHPStorm中的有些等宽字体会出现剃尾的现象.特别是 {} [] ()这些字符, ...

  7. 【Python】iiacm_filemaker ——简易的.cpp文件创建即初始化脚本,ACMer专用

    代码已全部重写,上次写的真是不忍直视…… 今天刚刚接触Python,本着学以致用的原则,就写了一个按照要求自动生成.cpp文件并初始化头文件的脚本. 确定你的linux中安装了Python,将下面的代 ...

  8. How to change a product dropdown attribute to a multiselect in Magento

    First, update the attribute input type to multiselect: UPDATE eav_attribute SET entity_type_id ', at ...

  9. AngularJs(八) 过滤器filter创建

    大纲 示例 过滤器的使用 创建过滤器 demo 这是整个示例demo 1.filter.js文件 angular.module("exampleApp", []) .constan ...

  10. send js object to webapi or mvc

    [HttpPost] public HttpResponseMessage AddInfo(UserInfoEntity userInfo) { return Request.CreateRespon ...