APP下载

基于UIkit和Foundation框架的移动短视频社交软件设计与实现

2018-09-10田阳光李媛王洁

河南科技 2018年31期
关键词:软件设计软件开发

田阳光 李媛 王洁

摘 要:随着计算机网络通信技术和Internet技术的发展,手机移动应用逐渐受到人们的关注。本文通过iPhone自主研发的开发软件Xcode7.2,利用UIkit框架和Foundation框架设计了一种将视频观看和视频评论关联起来的手机社交软件。

关键词:移动短视频;软件设计;软件开发

中图分类号:TP393.09文献标识码:A文章编号:1003-5168(2018)31-0017-03

Design and Development of Social Software Based on Mobile Short Video

TIAN Yangguang1 LI Yuan1 WANG Jie2

(1.Jilin Province Environmental Information Center,Changchun Jilin 130033;

2.Heilongjiang Environmental Information and Monitoring Center,Harbin Heilongjiang 150090)

Abstract: With the development of computer network communication technology and Internet technology, mobile phone mobile applications have gradually attracted people's attention. This paper used the UIkit framework and Foundation framework to develop a mobile social software that links video viewing and video commenting through the iPhone's self-developed development software Xcode7.2.

Keywords: mobile short video;software design;software development

随着计算机网络通信技术和Internet技术的飞速发展,手机移动应用逐渐受到人们的关注,这是由于手机拥有传统计算机所无法比拟的优点,如移动端具有简单性、任意性等优点[1]。由此,手机移动应用软件开发显得尤为重要,本文所设计的APP将视频观看和视频评论关联起来,是一款非常实用的手机社交软件。

1 软件设计与模块开发

整个手机采用模块化开发方式,先开发各个功能模块,最后统一做集成处理,应用系统整体采用MVC模式设计。

1.1 登录需求模块

该模块需要用户填写手机号和验证码,为简化注册流程将用户信息注册功能集成到服务器端,用户首次登录即为注册。未登录用户也可以进行信息浏览操作,当进行登录操作时,自动跳转登录页面。对于已经登录过的用户进行登录信息缓存处理,下次启动应用时检查上次登录用户信息,若存在则自动登录。

1.2 个人信息管理需求模块

该模块包括用户头像上传、昵称设置、性别设置、标签设置、年龄设置以及实名认证等操作。用户头像可以从拍照和相册两个地方选择,选择图片需进行裁剪方能上传,昵称设置范围为10个汉字长度。

1.3 视频录制和播放需求模块

视频录制功能采用分段式拍摄,用户可以录制多段短视频,最后点击“完成”进行视频合成,合成完成后会进入预览界面,用播放器进行播放。播放器功能包括显示时长、暂停以及播放进度条。

1.4 聊天功能模块

聊天功能模块包括展示信息界面,用户可以进行文字、声音、图片等相关发送操作,用户收到新消息时会有小红点提示。用户会话列表界面有搜索栏,可以模糊搜索联系人。

1.5 已发布信息管理模块

该模块主要对用户个人已发布的信息进行管理,包括修改信息、下架信息,下架后附近的人则不能看到。

1.6 关注和粉丝需求模块

关注和粉丝需求模块,每个用户最多可以关注1 000人,粉丝不限制。从粉丝列表可以直接进入聊天界面。

2 软件详细设计与开发

2.1 用户登录功能

用户在登录界面LoginVC控制器[2]中填写自己的手机号和正确的验证码,点击登录,在btnLoginClick中通过使用AFNetworking的方法将手机号和验证码提交到服务器,服务器接收数据并判断该手机号是否登录过,若为第一次登录则在服务器端为其注册好用户信息,并在处理完毕后将用户信息通过3DES加密回传给Client端,Client端在post请求的success回调方法中对回调用户信息进行解密操作,然后做硬盘缓存和内存缓存,方便维护数据一致性和其他类的调用。

2.2 个人信息管理功能

个人信息功能运行界面如图1所示,用户点击个人信息下的Cell标签,控制器跳转到标签选择页,在视图未显示之后的ViewDidappear方法中執行GetTagFromNet方法,继而从服务器中取到标签列表,然后展示在视图中,用户可以选择标签,单击选中,第二次点击为取消选中,用户最多可以选择三个标签。选择完毕后点击保存按钮,Client端提交修改过的用户信息到服务器端,服务器端成功回调用户缓存信息进行更新操作,然后跳转到个人信息页,根据缓存的用户信息更新个人信息页面,修改标签功能完成。

2.3 视频录制和播放功能

用户点击首页的录制按钮跳转到录制页面,录制页面可以选择前置摄像头和后置摄像头,还可以打开闪光灯。按住录制按钮开始录制视频,在录制视频的过程中,计时器开始计时,旁边小红点开始闪烁,录制视频下面进度条开始前进,录制按钮左边的删除按钮从隐藏状态显示出来。当录制达到最短完成时长或录制最大时长时录制按钮右边的完成按钮显示出来,点击完成就进入预览界面。点击左上的取消按钮会判断当前是否已录制,若无录制视频就返回首页,若有已录制的视频会提示“是否放弃当前录制的视频,点击确定即可删除已录制视频并返回首页,点击取消则不做响应。

用户进入服务详情页面,该页面视频有播放、暂停、进度条功能。如果单击视频,调用header.wmPlayer pause方法,则暂停视频播放;如果双击视频,调用header.wmPlayer play方法,则播放视频。视频下面有进度条,可查询视频当前时间和总的播放时间,可滑动进度条控制视频进度,该应用支持本地和网络播放。

2.4 聊天功能

聊天功能是本应用聊天交互的主要功能,为用户之间提供了文字、语音、图片以及位置分享等多种聊天服务,是用户之间交互的主要方式。

用户从“我的”页面进入“我的消息”页面,“我的消息”页面导航栏下面是一个搜索框,能够从聊天列表中进行模糊搜索,搜索结果会展示在另一个TableView上,结果为符合条件的用户列表;搜索框下面是聊天用户列表,用户列表放在一个TableView上,每一个用户则是放在cell里,cell里的展示信息包括用户头像、用户昵称、上次聊天信息和上次聊天时间。右滑cell会出现“删除”按钮,点击“删除”按钮,会将该用户移除聊天列表,后通过TableView的reloadData方法重新加载列表数据。

用户点击聊天列表的某个用户或者从信息详情页和他人主页的“联系Ta”按钮都可以进入聊天页面,聊天页面可以发送文字、图片、语音和位置信息,聊天功能基于XMPP即时通信,实现了用户与用户之间的零距离交流。语音录制功能为聊天页麦克风小图标按钮,点击按钮会出现“按住开始录音”按钮,按住按钮开始录制,录制时间过短会提示,录制成功则自动发送消息。图片功能作为文件上传处理,表情功能为特殊文字解析处理。

2.5 已发布信息管理功能

用户进入“我的主页”页面,点击视频右上角的向下箭头,页面调用[self moreEdit:serviceId]方法,该方法会跳出对话框,对话框中有删除信息、修改信息和取消。如果点击“删除信息”,则删除当前选中的信息;如果点击“下架信息”,则下架当前选中信息;如果点击“修改信息”,则跳转到修改信息页面;如果点击“取消”,则取消该次操作;若点击铅笔图标,则跳转到个人信息页面。

2.6 关注和粉丝功能

关注和粉丝功能组成了本应用的好友系统,用户可以关注他人,被关注的人就自动进入自己的关注列表,用户也可以被关注,关注自己的人就会被写入粉丝列表,便于查找自己感兴趣的人。

查看关注列表的入口是个人主页的头像下面的“关注”按钮,点击“关注”按钮执行followList.userId=self.userIdUserId传递到关注列表页面,后跳转页面,关注列表页面从网络获取该用户关注列表,网络获取到关注列表展示在UITableView中,cell中展示内容为关注人头像、昵称、标签以及关注或取消按钮,单击cell执行TableView的didselectRowAtindexpath代理方法,跳转到该用户的个人主页查看其相关信息。

粉丝功能运行界面如图2所示,粉丝列表的入口是个人主页的头像下面的“粉丝”按钮,点击“粉丝”按钮跳转页面,并将UserId传递到粉丝列表,网络获取到的粉丝列表展示在一个UITableView中,cell中展示的内容为粉丝头像、昵称和标签,单击cell跳转到该粉丝的个人主页,查看其相关信息。

3 结论

本文所设计的系统,主要基于iPhone自主研發的开发软件Xcode7.2,由UIkit框架和Foundation框架组成[3]。数据进行展示部分主要应用列表控制器UITableView,数据获取部分主要应用AFHttpNetWork第三方库,而数据保存用到SQLite数据库。

参考文献:

[1]王婧琦.移动短视频社交网络服务的技术、应用与发展[J].艺海,2014(7):112-114.

[2]关东升.iOS开发指南[M].北京:人民邮电出版社,2014.

[3]Suzanne Ginsburg.iPhone应用用户体验设计实战与案例[M].北京:机械工业出版社,2011.

猜你喜欢

软件设计软件开发
CAN总线通信技术在电梯监控系统中的应用
基于单片机SPCE061A的字幕机点阵式字母电子显示屏的设计制作
基于STM8S903K3的序列打螺丝夹具的软件设计
信息安全环境下的计算机软件开发研究
核电厂定期试验管理软件开发
FPGA软件开发过程中编码规范的作用
一种VHDL语言代码重用的方法