【从零之六&完结】android口语对话系统(RavenClaw java版 含所有源代码)

!!

更新:最新源码放到了github上,认为还不错点个星啊!

点击打开链接

做了一个半月最终完毕了,以下这个就是我參考Olympus/RavenClaw系统编写的对话管理系统。眼下实现了一个简单的航班查询,部分截图

眼下能实现的功能:

1.航班查询,详细的航班信息是我自己编的,下一步能够写个爬虫把真实的数据爬下来。编的数据放到了res/raw/flightinfo.txt中。

航班查询就设定了三个要素,时间,起始地和目的地,想更全面的话能够添加任务树的agent就可以。

2.在MainActivity中能够语音打开已安装的应用程序,这在前一篇博文也介绍过了。

3.别的功能就没有了,临时就这么挫。。

要想自己自定义对话系统。能够仿照我已经写的来,基本上就是自定义DialogAgent。记得要在UserDefinition这个类中注冊你要加入的agent,然后再自己创建新的dialogagent类继承CDialogAgent基类就可以。要完毕什么功能加入什么Subagent就全是自定义啦。

戳我下载

注意这个下下来是不能直接用的,由于我的id有每天识别次数限制,所以你要把res/value/strings中的app_id改成你自己的科大讯飞注冊的id,jar包也要换成你自己的,详细做法參照前面的从零系列博文。

毕业设计最终能够交差了。

。。

给我帮助极大的站点地址:http://wiki.speech.cs.cmu.edu/olympus/index.php/Olympus

有不论什么问题欢迎留言讨论交流,共同进步,也希望大家能够改进我的代码,刚学android。写的比較挫~~

时间: 2024-08-05 23:19:31

【从零之六&完结】android口语对话系统(RavenClaw java版 含所有源代码)的相关文章

【从零之六&完结】android口语对话系统(含全部源码)

做了一个半月终于完成了,下面这个就是我参考Olympus/RavenClaw系统编写的对话管理系统,目前实现了一个简单的航班查询,部分截图 目前能实现的功能: 1.航班查询,具体的航班信息是我自己编的,下一步可以写个爬虫把真实的数据爬下来.编的数据放到了res/raw/flightinfo.txt中.航班查询就设定了三个要素,时间,起始地和目的地,想更全面的话可以增加任务树的agent即可. 2.在MainActivity中可以语音打开已安装的应用程序,这在前一篇博文也介绍过了. 3.别的功能就

[原]零基础学习在Android进行SDL开发系列文章

[原]零基础学习SDL开发之移植SDL2.0到Android [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP图 [原]零基础学习SDL开发之在Android使用SDL2.0显示BMP叠加图 [原]零基础学习SDL开发之在Android使用SDL2.0渲染PNG图片 [原]零基础学习SDL开发之在Android使用SDL2.0加载字体 [原]零基础学习在Android进行SDL开发后记 [原]零基础学习在Android进行SDL开发系列文章,布布扣,bubuko.com

[原]零基础学习在Android进行SDL开发后记

本着学习交流记录的目的编写了这个系列文章,主要用来记录如何从零开始学习SDL开发的过程,在这个过程中遇到了很多问题,差点就放弃了.首先是SDL的Android移植的时候遇到了比较坑的是SDL移植到Android的JNI文件编写比较坑,刚开始想着如何将SDL编译成动态共享库,在别的地方直接调用该动态共享库,结果发现死活崩溃在SDL_Init()这个函数,最后发现SDL的JNI文件直接使用SDLActivity的函数,并且JNI采用静态注册的方式.直接在别的地方调用该动态库就跪了,博主能力又有限,又

Android开发之自定义TabHost文字及背景(源代码分享)

使用TabHost 可以在一个屏幕间进行不同版面的切换,而系统自带的tabhost界面较为朴素,我们应该如何进行自定义修改优化呢 MainActivity的源代码 package com.dream.ledong; import android.app.TabActivity; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.view.Gr

Android使用Eclipse遇到"java.lang.ClassNotFoundException"

最近遇到个Android Jar的问题,找了几天才找到root cause. 在此记录下. 我们的Android项目需要使用一个供应商的Jar. 我们使用的开发环境为:Eclipse + ADT插件(这年头居然不用Android Studio...). 把下载好的Jar放入"libs"文件夹内,Eclipse就会自动识别. 启动APK,直接crash. Logcat 报:"java.lang.ClassNotFoundException"错误. 查看项目的 Java

Android的JS调用Java代码或使用了Javascript相关技术改如何混淆

http://www.androidren.com/index.php?qa=282&qa_1=android的js调用java代码或使用了javascript相关技术改如何混淆 Android 4.2开始 JS调用Java代码的时候必须加上@JavascriptInterface才能调用. 加上@JavascriptInterface之后就必须要考虑混淆时候的问题,如果混淆的时候把@JavascriptInterface搞丢了你的程序就无法调用了. 其实很简单,你只需要在混淆里面加上: -ke

Android技术10:Java与C语言之间简单数据的传递

由于C语言和Java语言之间很多类型不一致性,因此使用native时,需要数据类型转换.下面演示分别传递整型,字符串,整型数组,Java静态方法传递数据. 1.创建native方法 我们单独创建一个NativeClass类来存放native方法 1 package com.forsta.ndk; 2 3 public class NativeClass { 4 public native int add(int x,int y); 5 public native String showStrin

在Android中调用C#写的WebService(附源代码)

由于项目中要使用Android调用C#写的WebService,于是便有了这篇文章.在学习的过程中,发现在C#中直接调用WebService方便得多,直接添加一个引用,便可以直接使用将WebService当做一个对象使用,利用Vs2010中的代码提示功能就能爽歪歪地把想要的东西全部点出来.在Android调用,麻烦了一点,但是也还好.主要是我们需要自己在代码中确定要调用WebService的方法名是什么,要传给WebService什么参数以及对应的参数名,另外,一些额外的信息比如soap的版本号

android的NDK和java进行本地socket通信

关于Android应用与Framework的socket通信,相信关心这个问题的朋友们已经看过<android使用socket使底层和framework通信>这篇文章,美中不足的是作者只贴出一些关键的代码片段而并没有放出源码.我这里还是以一个能实际运行的例子为基础来讲,这样也方便大家学习. 首先看一下效果,如下图.我填写姓名"Potter",选择性别"Mr"然后点击发送,底层socket收到消息后将消息直接返回给我,我将返回的结果(Mr.Potter)直