第12章 阶段案例-智能聊天机器人_第1页
第12章 阶段案例-智能聊天机器人_第2页
第12章 阶段案例-智能聊天机器人_第3页
第12章 阶段案例-智能聊天机器人_第4页
第12章 阶段案例-智能聊天机器人_第5页
已阅读5页,还剩2页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

博学谷——让IT教学更简单,让IT学习更有效北京市昌平区建材城西路金燕龙办公楼一层电话:400-618-4000传智播客《Android移动应用基础教程(AndroidStudio)(第2版)》教学设计课程名称:《Android移动应用基础教程(第2版)》授课年级:20xx年级授课学期:20xx学年第一学期教师姓名:某某老师20xx年xx月xx日课题名称第12章阶段案例——智能聊天机器人计划学时4学时内容分析如果每学完一个阶段的知识,开发一个有趣的App,想必这是不少Android学习者期望的一种学习方式。本章我们将运用第7~11章的知识点,开发一个智能聊天机器人,该智能聊天机器人主要是供用户娱乐休闲,它可以与用户讲故事、说笑话、跟用户聊天,非常有趣。接下来,我们就正式进入智能聊天机器人的开发吧。教学目标要求学生掌握如何引入与使用okhttp库,实现处理网络请求的功能要求学生熟悉Handler消息机制,实现将获取的数据传递到主线程中要求学生熟悉如何使用JSONObject类,实现解析机器人发送的消息数据功能要求学生掌握智能机器人的开发,实现智能机器人通信的功能教学重点通过Handler消息机制实现将数据传递到主线程中、使用JSONObject类解析机器人发送的消息、实现智能机器人通信的功能教学难点通过Handler消息机制实现将数据传递到主线程中、实现智能机器人通信的功能教学方式教师采用课堂讲授为主,使用教学PPT辅助授课。教学过程第一学时(需求分析、开发环境介绍、申请机器人身份标识、搭建聊天界面与聊天条目布局、封装聊天信息实体类)一、情景导入1、教师根据课件,讲述项目的需求分析现在生活压力越来越大,当你工作比较疲惫时,想看一些笑话或者故事娱乐一下吗?为了更好地调节心情提高生活质量,我们开发了一款基于Android系统的智能聊天机器人,它能够与用户智能对话。2、教师根据课件,讲述项目的需求分析、开发环境介绍、申请机器人身份标识、搭建聊天界面与聊天条目布局、封装聊天信息实体类我们首先要了解智能聊天机器人项目的需求分析、开发环境,接着进入项目的开发,首先申请机器人身份标识,然后搭建聊天界面与聊天条目布局以及封装聊天信息实体类。3、明确学习目标要求学生了解什么是项目的需求分析要求学生掌握如何申请机器人身份标识要求学生掌握如何搭建聊天界面与聊天条目布局要求学生掌握如何封装聊天信息实体类二、重点知识讲解1、教师根据课件,讲述项目的需求分析与开发环境介绍在本章中项目的需求分析,我们分为业务需求分析、模型需求分析和界面需求分析。业务需求分析主要是介绍为什么要编写本项目,本项目符合哪些人群的需求,例如,为了更好地调节心情提高生活质量,我们开发了一款基于Android系统的智能聊天机器人,它能够与用户智能对话。模型需求分析主要是从界面的显示→数据的封装→HTTP请求→图灵机器人服务器→返回JSON数据与解析JSON数据→封装数据→将数据显示到界面上。界面需求分析,友好的界面在移动平台开发中非常重要,也是用户使用软件的先决条件。智能聊天机器人的界面设计模仿QQ手机聊天软件的界面样式和设计,为聊天者显示头像和消息,并将用户发送和接收的消息左右区分开。根据教材内容中的界面图详细介绍聊天界面。本项目的开发环境,操作系统使用的是Windows7系统,开发工具使用的是AndroidStudio3.2+模拟器与JDK8,API版本是27。根据教材内容及PPT讲解项目的需求分析与开发环境介绍,重点让学生了解项目的需求分析。2、教师根据课件,讲述如何申请机器人身份标识图灵机器人是一个智能机器人开放平台,它提供了自动解析文字的API接口,开发者可以访问/注册成为用户并创建机器人。每创建一个机器人,都可以得到一个Key值,作为机器人访问API的身份标识。接下来,根据教材中的步骤申请机器人身份标识。老师根据教材内容以及PPT申请机器人身份标识。3、教师根据课件,讲述如何搭建聊天界面与聊天条目布局当打开智能机器人应用时,会出现一个聊天界面,该界面左边显示的是机器人头像和聊天内容,右边显示的是用户头像和聊天内容,聊天界面下方会放置聊天的输入框和发送按钮,接下来创建聊天界面的布局。1、创建项目首先创建一个项目,将其命名为IntelRobot,指定包名为com.itheima.robot,Activity名为RobotActivity,对应布局名为activity_robot。2、导入界面图片根据教材内容,将聊天界面需要的图片导入到项目中的drawable-hdpi文件夹中。3、放置界面控件在activity_robot.xml布局文件中,放置1个TextView控件用于显示界面标题,1个ListView控件用于显示聊天列表,1个Button控件用于显示发送按钮,1个EditText控件用于显示输入框。搭建聊天条目布局,具体如下:1、创建聊天列表界面Item在res/layout文件夹中,创建机器人聊天的Item布局文件chatting_left_item.xml与用户聊天的Item布局文件chatting_right_item.xml。2、放置界面控件在chatting_left_item.xml布局文件中,放置1个ImageView控件用于显示机器人的头像,1个TextView控件用于显示机器人发送的消息。在chatting_right_item.xml布局文件中,放置1个ImageView控件用于显示用户的头像,1个TextView控件用于显示用户发送的消息。根据教材内容以及PPT讲述聊天界面与聊天条目的布局代码,让学生掌握如何搭建布局界面。4、教师根据课件,讲述如何封装聊天信息实体类由于机器人与用户聊天的每条消息都会有消息的状态、消息的内容等属性,因此需要创建一个ChatBean类来存放消息的这些属性。接下来,在程序的cn.itcast.robot包中创建一个ChatBean类。在该类中创建机器人与用户聊天信息的属性。该类中的具体代码参考教材内容。根据教材内容及PPT讲述如何封装聊天信息实体类。三、归纳总结,布置课后作业1、回顾上课前的学习目标,并对本节课的重要知识点进行总结。教师提问学生本节课需要掌握的知识点,包括需求分析、开发环境介绍、申请机器人身份标识、搭建聊天界面与聊天条目布局、封装聊天信息实体类等知识,并对学生的回答进行补充和总结。2、布置随堂练习,检查学生掌握情况。根据博学谷和随堂练习资源,给学生布置随堂练习,检测学生的掌握程度,并对学生出现的问题进行解决。3、使用博学谷系统中的测试题给学生布置作业。第二学时(编写聊天列表适配器、实现智能机器人通信)一、回顾上节讲解的知识,引出本节需要讲解的知识1、教师对上节课留的作业进行答疑。2、回顾上节课学习的内容,引出本节课的内容。上节课讲解了需求分析、开发环境介绍、申请机器人身份标识、搭建聊天界面与聊天条目布局、封装聊天信息实体类等知识,了解完这些知识之后,接下来讲解如何编写聊天列表适配器与如何实现智能机器人通信功能。3、明确学习目标要求学生掌握如何编写聊天列表适配器要求学生掌握如何实现智能机器人通信功能二、重点知识讲解1、教师根据课件,讲述如何编写聊天列表适配器由于聊天界面用了ListView控件显示聊天信息,因此需要创建一个数据适配器ChatAdapter对ListView控件进行数据适配。接下来,创建一个ChatAdapter类,具体步骤如下:1. 创建ChatAdapter类在cn.itcast.robot包中,创建一个ChatAdapter类继承BaseAdapter类,并重写getCount()、getItem()、getItemId()、getView()方法,在getView()方法中需要设置Item的布局与数据。2. 创建ViewHolder类在ChatAdapter类中创建一个Holder类来获取Item界面上的控件。ChatAdapter类中的具体代码参考教材中的内容。老师根据教材内容,对代码进行详细的讲解,重点讲解getView()方法中的设置,让学生掌握如何设置列表的适配器。2、教师根据课件,讲述如何实现智能机器人通信功能聊天界面主要用于展示机器人与用户的头像和聊天内容,当第一次进入智能机器人聊天应用时,机器人会发送一些欢迎信息,用户接收到欢迎信息后,会与机器人进行一些互动,发送一些信息。机器人会根据用户发送的聊天内容从图灵机器人服务器上获取机器人的回复信息,并将获取的机器人回复信息通过Json解析显示到界面上。1、添加okhttp库由于本项目中需要用okhttp库中的OkHttpClient类向服务器请求数据,因此将okhttp库添加到项目中。右击项目名称,选择【OpenModuleSettings】【Dependencies】选项,点击右上角的绿色加号并选择Librarydependency,然后找到com.squareup.okhttp3:okhttp:3.12.0库并添加到项目中。2、设置机器人的欢迎信息这些信息是在res/values文件夹中的strings.xml文件中存放的,具体内容参考教材。3、编写界面交互代码在RobotActivity中,创建5个方法initView()、showData()、sendData()、getDataFromServer()、updateView(),分别用于获取界面控件并初始化界面数据、显示欢迎信息到界面上、用户发送信息、从服务器获取机器人的回复信息、更新界面信息,最后重写onKeyDown()方法,在该方法中实现点击后退键退出智能聊天程序的功能。老师根据教材内容,对代码进行详细的讲解,重点讲解getView()方法中的设置,让学生掌握如何实现智能机器人通信功能。三、归纳总结,布置课后作业1、回顾上课前的学习目标,并对本节课的重要知识点进行总结。教师提问学生本节课需要掌握的知识点,包括编写聊天列表适配器、实现智能机器人通信等知识,并对学生的回答进行补充和总结。2、布置随堂练习,检查学生掌握情况。根据博学谷和随堂练习资源,给学生布置随堂练习,检测学生的掌握程度,并对学生出现的问题进行解决。3、使用博学谷系统中的测试题给学生布置作业。第三、四学时(上机练习)上机练习主要针对本章中需要重点掌握的知识点,以及在程序中容易出错的内容进行练习,通过上机练习可以考察同学对知识点的掌握情况,对代码的熟练程度。上机一:(考察知识点完成申请机器人身份标识

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论