文献综述——社交类App

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

文献综述
专业计算机科学与技术
学生姓名
班级
学号
指导教师
文献综述
一、前言
社交类App是比较年轻一代人喜欢上的网络交流的工具,更是偏向于娱乐性,主要功能模块包括:用户注册登录页、首页、消息发送箱、个人主页等[1]。

针对消息发送箱中涉及语音录制、播放和控制的需求,设计并实现了基于iOS 平台交互式语音录播系统。

该模块具有录音、播放、语音识别和语音交互功能。

系统界面简洁,体验良好,对各功能进行了具体的分析,描述了各功能的设计思想,App的核心功能是发送语音以及进行配图进行社交,所以该App也必须要满足用户发图过程的安全性和稳定性。

二、主题
1.客户端需求及功能[2]
社交类App主要功能模块包括:用户注册登录页、首页、消息发送、个人主页等。

App的核心功能是发送语音以及进行配图进行社交,所以社交类App也必须要满足用户发图过程的安全性和稳定性[6]。

(1)用户登录注册:用户进行邮箱注册登录
(2)首页:获取其他用户最新发布的图片以及语音信息
(3)消息发送箱:用户进行拍照发图或者是在相册选择照片进行发布
(4)个人主页:展示用户信息以及发布的图片的信息
2.系统总体设计
2.1软件整体设计
iOS客户端的系统设计主要分为客户端和服务端两层。

前台主要负责客户端与用户交互,包括接收用户请求和返回显示请求信息两个部分。

后台服务端部分主要负责网络请求、数据库访问、JSON数据解析[6]。

点击首页底部导航条上的首页便可获取其他用户最新发布的图片以及语音信息,也就是整个App的图片语音消息界面。

2.2录音拍照发图设计
用户点麦克分按钮进行录音,点击NEXT进行配图添加点,击发布按钮,图片便可进入发布队列,然后页而回到客户端首页,首页上方进行刷新显示。

2.3消息发送箱模块设计
对于消息发送箱模块,录音功能是至关重要的,录音软件是iPhon。

和iPad 移动设备必备的工具,给工作、学习和生活带来了很大的便利。

iOS系统自带的录音机软件是一款操作简单、高质量的软件,具有高音质的录音文件输出和良好的用户体验。

但是,系统自带的录音软件的功能也相对较少。

同样苹果商店的其他录音软件一般只是实现录音、播放、文件的存储和文件的管理;有的功能强的录音软件还具有录音文件的编辑、网络分享等功能。

通过对很多常用录音软件的试用,发现针对该软件的实际需求,这些软件还存在一些功能上的缺陷和不足[5]:
1)用户录词语时候,如果一次性不间断的录制完全部词语或句子,那在听写的时候,用户需要一边写一边按“暂停”按钮,一旦错过,或者当前的内容没有写好,还要重新操作设备再倒回合适的位置,才能继续完成听写作业。

这让用户容易分心,做作业的效率也低下;
2)录词语时候,可以特意留些时间作为词语间的间隔,这样在听写时,用户一般不需要按“暂停”按钮,但录音时这些停留的时间也是浪费。

而且,词语间时间间隔的长短很难掌控。

3)考虑这些不足,设计了一个交互式语音录播系统。

系统除了具有传统录音机软件的基本功能外,特别增加了语音识别和语音交互功能,让用户使用起来更加便捷。

2.3.1消息发送箱模块实现的功能[5]
1)录音功能。

主要功能是当用户按下“开始录音”按钮时,系统设置录音的参数并开始录音;当松开按钮,则录音结束,并将以当前的系统时间命名录音文件后再进行本地化存储,同时显示到列表视图中供用户查看和编辑。

录制时,有进度条控件显示音频的大小。

2)播放功能。

主要功能是当用户点击“开始播放”按钮时,开始按列表视图中音频文件的顺序播放。

另外,还具有暂停播放和停止播放功能。

3)语音交互功能。

该功能的实现关键问题是系统播放完一个音频后,下一个音频什么时候播放。

有两种解决方案:一种方案是播放一个音频后,等待一段时间,等待的时间是音频文件的播放时间乘以一个系数,该系数根据用户写字的速度快慢自行设定;另一种方案是系统暂停播放听写作业,录音机播放一个预先录
制好“写好了吗?”的音频文件咨询用户,当用户听写完,说“好了’,“下一个”或“写完了”等关键词时,再继续播放下一个音频文件。

当用户说“再来一遍”、“重报”或“重复”等关键词时,系统就再重播一遍刚才的音频。

第一种方案适合课堂上的作业听写,不会因为个人个别词的听写慢而等待;而第二种方案采用人机交互,适合个人的作业听写,更加人性化。

4)文件管理。

主要功能是向左滑动删除表视图中的音频文件,同样也真正意义上删除沙盒中的文件。

也可以点击“全选”和“全部删除”按钮删除所有文件。

2.3.2录音模块设计流程
1)录音功能模块。

具体流程如图1所示[10]:
2)播放和识别功能模块。

具体流程如图2所示[10]:
2.3.3对于录音模块涉及的核心内容有
1.1声音处理包[10]
在iOS应用开发中,播放音频主要采用AudioToolbox.framework和AVFoundation.framework。

前者主要用于短音频的播放,通常用于一些特效音频播放,对于这类音频不需要进行进度、循环等控制。

后者常用于播放一些较长的音频,对于这些音频的播放通常需要进行精确的控制[1]。

所以,本系统录音机功能的实现使用的是AV Foundation框架。

录音机应用程序使用了AV Foundation框架中的AVAudio Recorder实现录音功能[3]。

使用框架中的AVAudioPlayer来实现播放功能[2]AVAudioPlayer可以看成一个播放器,它支持多种音频格式,而且能够进行进度、音量、播放速度等控制。

由于AVAudioPlayer一次只能播放一个音频文件,所以本系统中多个音频的播放是通过创建多个播放器对象来完成。

要用这两个类,需要添加头文件:#import <AVFoundation/AVFoundation.h>。

1.2语音识别包
关于语音识别功能的核心技术可以采用第三方开发包。

诸如此类的语音识别
包有很多,本系统采用的是讯飞语音识别开发包。

使用这SDK需要做如下事情[9]:
1)到讯飞官方网站的开发者专区先注册一个帐号。

2)登陆之后到自己的个人中心创建一个应用,填写好相关信息,然后等待审核通过。

3)应用审核通过后,选择对应平台的SDK下载。

4)解压下载的压缩包,从包中选择部分framework添加到工程中,添加的库名见表1所示:
5)导完类库之后,在建好的工程里添加需要用的头文件。

#import <AVFoundation/AVAudioSession.h>
#import <AudioToolbox/AudioSession.h>
#import “iflyMSCIIFIySpeechUtility.h”
#import “iflyMSC/IFlySpeechUnderstander.h”
3.系统测试
软件设计把每个搭建的页而都进行测试,以达到每个模块能顺畅运行[4]。

当所有模块达到预期后,将整个应用搭建好然后再进行整体的测试。

4.MVC设计模式[8]
MVC设计模式,即模型(model)一视图(view)一控制器( controller)模式,
是一种典型的将业务逻辑和数据显示分离的方法。

Cocoa Touch中的MVC模式与传统的MVC模式略有不同,Cocoa Touch中的模型和视图之间是不能进行任何通信的,所有的通信都是通过控制器完成。

如图3所示:
Cocoa Touch的MVC模式,控制器对象会分析用户在视图对象上的操作,将新数据或者更改过的数据传递给视图对象,从而将模型对象的数据显示在视图对象上[3]模型主要用于保存少量的应用程序状态数据,一般继承于NSObject类。

本系统中的模型有对控制器提供的音频文件名进行播放、暂停、停止的类。

视图是用于发出各种业务操作的行为,能让用户看到并能与之交互的元素[7]。

通俗而言,就是用户所能看到的一些按键以及页面展示的一些数据,根类一般是UIView类,常使用InterfaceBuilder来创建视图组件,特殊情况下,会使用代码实现。

本系统中界面上的按钮、视窗、表视图、进度条等都是视图。

控制器作为中间核心环节,主要通过委托、事件和通知来实现。

控制器组件继承于UIViewController基类。

通常继承基类可以实现TableViewController 等其他子类的实现,社交类App是一个多视图的应用,所以需要多个控制器类,尤其是对于TableViewController这个控制器的使用居多,这些控制器负责接收视图发出的一系列业务操作行为,将其通知给模型进行数据解析,之后从模型获取业务逻辑,将其在界面上显示出来。

三、总结
基于iOS平台的语音社交APP的设计,主要由首页、消息发送箱、个人主页等功能页组成,以iOS作为系统开发和运行平台,完成系统框架App的设计、开
发以及后期测试。

语音类社交App设计并实现了基于iOS平台交互式语音录播系统。

系统具有录音、播放、文件管理、语音识别和语音交互功能,图片分享等功能[7]。

参考文献
[1]邓文渊.Swift开发iOS App快速入门与实践[M].北京:清华大学出版社,2016.3:45-48.
[2]萨丹著.iPhone开发秘籍[M].北京:人民邮电出版社,2014.
[3]李俊阳,杜承垚,胡雪婷,卢力.Xcode江湖录[M].北京:机械工业出版社,2015.11:56-62.
[4]丁敬香,袁美斌,崔文.iOS开发标准教程[M].北京:人民邮电出版社,2016.8:37-43.
[5]王渊博.iOS系统下音频播放的实现方法[J].科技信息,2014(15):105-106.
[6]孙玉梅,安天洋,杨鹏.基于iOS平台的图片社交APP疯贴-FUN的设计与实现[J].科技展望,2015,(35):2-3.
[7]李刚.疯狂iOS讲义(基础篇)[M].北京:电子工业出版社,2016.5:45-50.
[8]Bosy G.Pitre.Swift基础教程(第二版)[M].人民邮电出版社,2016.2:67-72.
[9]传智播客高教产品研发部编著.开发项目化入门教程[M].北京:人民邮电出版社,2015,9.
[10]杨平.基于iOS平台交互式语音录播系统的设计与实现[J].微型电脑应用,2016,(07):39-41.。

相关文档
最新文档