logo资料库

手机移动开发技术大作业.docx

第1页 / 共12页
第2页 / 共12页
第3页 / 共12页
第4页 / 共12页
第5页 / 共12页
第6页 / 共12页
第7页 / 共12页
第8页 / 共12页
资料共12页,剩余部分请下载后查看
2015-2016学年第2学期
《手机移动开发技术》课程大作业报告
(2)模型需求分析
2015-2016 学年第 2 学期 《手机移动开发技术》课程大作业报告 课题名称: 智能聊天机器人 班级 计 133-2 学号 201358503230 姓名 田 庆 课题实现采用的工具(如为其他,请填写具体工具名称) □Eclipse □其他_______________________________________________ 课题完成时间:___________________________________ 对应提交的电子文档打包文件名称(准确填写): __________________________________________________________
==============以下部分为教师填写区,请勿填写============== 成绩评定: 软件运行______软件基本功能_______软件提高功能______ 软件部分成绩________ 文档结构______文档理论___________文档撰写__________ 文档部分成绩________ 总成绩_____________ 备注
目录 一、系统分析..................................................................................错误!未定义书签。 二、系统设计..................................................................................错误!未定义书签。 三、具有代表性模块的程序..........................................................错误!未定义书签。 四、经验总结..................................................................................错误!未定义书签。 五、自主创新比例说明..................................................................错误!未定义书签。 六、附件..........................................................................................错误!未定义书签。
一、系统分析 (1)功能设计 聊天机器人不仅是可以智能对话,而且能够做很多事情,帮你查询公交线 路、解释英语单词、翻译英文句子,推荐美食,提示天气信息等。这些都是人们 可以使用它完成的事情。 提供这样智能信息,实际上很难的事情,涉及到对用户要求的语意理解, 以及对于海量信息的精确搜索和分析。这一方面我们短时间内无法做到这一点, 但是很有幸我们能够调用第三方公司提供的在开放网络上的 API。 (2)模型需求分析 虽然聊天机器人是一个很小的应用,但是仍然需要对其模型进行详细的分析。 如下图 3.1 所示: 图 1.1 聊天机器人模型需求分析 (3)创建类图
图 1.2 聊天机器人系统类图 (4)活动图 图 1.3 聊天机器人活动图 二、系统设计 (1)系统架构设计 丰富而又可扩展性的视图(View),可以用来构建应用程序,它包括列表 (ListView),文本框(EditText),按钮(Button)。资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件(LayoutFiles)。活动管理 器(Activity Manager)用来管理应用程序的生命周期,并提供常用的导航回退功能。
(2)用户界面设计 移动平台软件的界面友好是一个比较重要的方面,界面的友好是用户使用 软件的先决条件。 聊天机器人的界面设计模仿 QQ 手机聊天软件的界面样式和设计,为聊天者 显示头像和语句,并在语句下放置气泡类型的背景图片,并将用户发送和接收的 信息以左右的类型区分开。 (3)聊天机器人详细设计 1.布局文件 聊天机器人的页面目前只有一个,使用 LinearLayout 布局,使用一个 ListView 承载聊天信息列表,页面下方是一个文字输入框和一个发送按钮。 图 2.1 聊天机器人主界面 另外,为了实现聊天语句发送和接收的区分,ListView 里的项目里也定义了 布局文件。
图 2.2 接收消息项布局 图 2.3 发送消息项布局 其中图 2.2 表示用户接收的信息,图 2.3 表示用户向机器人发送的信息。所有的 信息被记录时,需要保存一个 flag 字段,来表示它属于哪种类型的消息。 2.主配置文件 由于这个应用需要调用远程网络的第三方 API,所以需要特别在 AndroidManifest.xml 文件中注册应用访问网络的权限,如下所示: 三、具有代表性模块的程序 网络通讯实现: (1)HttpUtils 聊天机器人发送消息和接收消息都需要使用到 HTTP 协议,使用 Java 提供的 相关类,可以很方便的进行书写。 public class HttpUtils { private static final String URL = "http://www.tuling123.com/openapi/api"; private static final String API_KEY = "e1472c7a16ef0eaf682245602672d40a"; public static ChatMessage sendMessage(String msg) { ....... } public static String doGet(String msg) { ......... } private static String setParams(String msg) { String url = ""; try { url = URL + "?key=" + API_KEY + "&info="
+ URLEncoder.encode(msg, "UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return url; } } (2)ChatMessage public class ChatMessage { private String name; private String msg; private Type type; private Date date; public ChatMessage(String msg, Type type, Date date) { super(); this.msg = msg; this.type = type; this.date = date; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getMsg() { return msg; } public void setMsg(String msg) { this.msg = msg; } public Type getType() { return type; } public void setType(Type type)
分享到:
收藏