package inputdemo是unity导入package什么包

Java(1-4)复习题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Java(1-4)复习题
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
下载文档到电脑,查找使用更方便
还剩13页未读,继续阅读
你可能喜欢我对Android可以说是完全零基础,因为老师要求做口语对话系统,所以开始从头一点点看。目前完成了一个非常简单界面很粗糙的语音识别Demo,因为网上现有的代码都太老了,或者问题很多,给像我这样的新手带来很大的困扰,所以决定写个从零开始的心得体会,大酒神不是有从零单排嘛,咱也来个从零单排(愚笨想不出好名来。。)先晒一下我最简单的代码,后续会贴出性能更好界面更完善的来。利用科大讯飞语音包的话还是比较简单的,网上有个iflyDemo的例子,但是他用的MSC的jar包太老了,现在都不能使用,所以还是得自己去科大讯飞的官网上注册下载。这里是网址:/1.点开发入口后完成注册,注册完填一下个人信息,项目介绍什么的,它会给你一个appid,这个很有用必须要有。然后进sdk下载,android有两个包,都下下来。这次我们主要用的是Msc.jar包,就是那个较小的压缩文件。2.解压缩后里面有个sample,那个就是个demo,但不能直接用打开全是错,估计就是做个示范教你怎么用的。还有一个apk文件下到adt中竟然是个闹铃、秒表的app,太坑爹了吧!比较有用的是doc下的开发手册,好好看看那个。3.开发手册里写的很清楚怎么搭建自己的工程,并添加它给的jar包,还有插图,我就不赘述了4.它的mscdemo中又很多java文件,因为它能实现语音识别,合成,语义理解等多种功能,我们这次只演示语音听写5.先把一下内容添加到自己的Manifest.xml文件中&uses-permission android:name=&android.permission.RECORD_AUDIO& /&& & &uses-permission android:name=&android.permission.INTERNET& /&& & &uses-permission android:name=&android.permission.ACCESS_NETWORK_STATE& /&& & &uses-permission android:name=&android.permission.ACCESS_WIFI_STATE& /&& & &uses-permission android:name=&android.permission.CHANGE_NETWORK_STATE& /&& & &uses-permission android:name=&android.permission.READ_PHONE_STATE& /&6.布局很简单,一个edittext框显示内容,一个button点击开始说话。main.xml如下&?xml version=&1.0& encoding=&utf-8&?&&LinearLayout xmlns:android=&/apk/res/android&
android:layout_width=&fill_parent&
android:layout_height=&fill_parent&
android:orientation=&vertical& &
android:id=&@+id/editText&
android:layout_width=&fill_parent&
android:layout_height=&300dp&
android:gravity=&top&
android:inputType=&textMultiLine& &
&requestFocus /&
&/EditText&
android:id=&@+id/button_start&
android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:text=&点击开始说话& /&&/LinearLayout&7.string也很简单,就几句话,要注意app_id填你自己的id&?xml version=&1.0& encoding=&utf-8&?&&resources&
&string name=&hello&&Hello World, MainActivity!&/string&
&string name=&app_name&&_iflyDemo&/string&
&string name=&app_id&&1234567&/string& &string name=&text_login_fail&&登录失败&/string&&/resources&8.最后是Activity.java。要完成这个主要用了它封装好的SpeechRecognizer这个类,导入的包基本都在他的Msc.jar包里面,只有一个JsonParser的需要手动将他demo里的那个JsonParser复制到自己的新建的package里面来,如图9.activity代码如下package barry.android.ifly.import android.app.Aimport android.os.Bimport android.view.Vimport android.view.View.OnClickLimport android.widget.Bimport android.widget.EditTimport android.widget.Timport android.text.TextUimport com.iflytek.cloud.speech.RecognizerRimport com.iflytek.cloud.speech.SpeechEimport com.iflytek.cloud.speech.SpeechLimport com.iflytek.cloud.speech.SpeechRimport com.iflytek.cloud.speech.SpeechCimport com.iflytek.cloud.speech.RecognizerLimport com.iflytek.cloud.speech.SpeechUimport barry.android.ifly.utils.JsonPpublic class MainActivity extends Activity { private Button startButton = private SpeechRecognizer iatR //set engine,iat means dictation private String engine=&iat&; //set frequency,8000 or 16000 private String rate=&16000&; //识别结果显示 private EditText mResultText = // Tip private Toast mT
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mToast = Toast.makeText(this, &&, Toast.LENGTH_LONG);
//用户登录
SpeechUser.getUser().login(MainActivity.this, null, null
, &appid=& + getString(R.string.app_id), listener);
mResultText = (EditText) findViewById(R.id.editText);
startButton = (Button) findViewById(R.id.button_start);
startButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
showIatinvisble();
}); } protected void showIatinvisble() {
iatRecognizer=SpeechRecognizer.createRecognizer(this);
//获取引擎参数
iatRecognizer.setParameter(SpeechConstant.DOMAIN, engine);
iatRecognizer.setParameter(SpeechConstant.SAMPLE_RATE, rate);
//clear myResulttext
mResultText.setText(null);
iatRecognizer.startListening(myrecognizerListener); } /*
* 识别回调监听
*/ private RecognizerListener myrecognizerListener=new RecognizerListener(){
public void onBeginOfSpeech() {
showTip(&开始说话&);
public void onError(SpeechError err) {
showTip(err.getPlainDescription(true));
public void onEndOfSpeech() {
showTip(&结束说话&);
public void onEvent(int eventType, int arg1, int arg2, String msg) {
public void onResult(RecognizerResult results, boolean isLast) {
String text = JsonParser.parseIatResult(results.getResultString());
mResultText.append(text);
mResultText.setSelection(mResultText.length());
public void onVolumeChanged(int volume) {
showTip(&当前正在说话,音量大小:& + volume);
* 用户登录回调监听器.
*/ private SpeechListener listener = new SpeechListener(){
public void onData(byte[] arg0) {
public void onCompleted(SpeechError error) {
if(error != null) {
Toast.makeText(MainActivity.this, getString(R.string.text_login_fail)
, Toast.LENGTH_SHORT).show();
public void onEvent(int arg0, Bundle arg1) {
private void showTip(String str) {
if(!TextUtils.isEmpty(str))
mToast.setText(str);
mToast.show();
}10.效果图。识别效果不算好是程序太简陋的问题,相信完善后会不错的!后续会贴出改进版,敬请关注。欢迎讨论交流,共同学习!转载请注明出处:http://blog.csdn.net/monkeyduck & 谢谢!<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&3275人阅读
Java(11)
提前准备工作,需从网上下载struts-2.2.3.1-all.zip压缩包。
&&&& 首先创建一个web项目(File-New-Web-Dynamic Web Project),名字为:struts2-examples
&&&& 把从网上下载struts-2.2.3.1-all.zip压缩包里的lib下的asm-3.1.jar、asm-commons-3.1.jar、asm-tree-3.1.jar、commons-fileupload-1.2.2.jar、commons-io-2.0.1.jar
commons-lang-2.5.jar、freemarker-2.3.16.jar、javassist-3.11.0.GA.jar、ognl-3.0.1.jar、struts2-core-2.2.3.1.jar、xwork-core-2.2.3.1.jar拷贝到WEB-INF/lib下。
&&&&& 右击项目名-properties-Java Build Path-Libraries-Add JARs-全选择刚刚lib下的jar包。我之前在网上查的几个包导入后,运行后,发现报错。所以,我又把struts-2.2.3.1-all.zip压缩包里struts2-blank项目里的包全拷贝过来的,就是上面的那几个包。顺便把web.xml也给拷贝过来。
web.xml如下所示:
&?xml version=&1.0& encoding=&UTF-8&?&
&web-app id=&WebApp_9& version=&2.4& xmlns=&/xml/ns/j2ee& xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance& xsi:schemaLocation=&/xml/ns/j2ee /xml/ns/j2ee/web-app_2_4.xsd&&
&display-name&Struts Blank&/display-name&
&filter-name&struts2&/filter-name&
&filter-class&org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter&/filter-class&
&filter-mapping&
&filter-name&struts2&/filter-name&
&url-pattern&/*&/url-pattern&
&/filter-mapping&
&welcome-file-list&
&welcome-file&index.html&/welcome-file&
&/welcome-file-list&
&/web-app&
web.xml里面有这样一段:&welcome-file&index.html&/welcome-file&,这一步也很重要,一定要在WebContent目录下(与WEB-INF文件夹在同一级目录下)建一个index.html与之匹配,要不然,会出一些莫名其妙的错误。
index.html内容如下:
&!DOCTYPE HTML PUBLIC &-//W3C//DTD HTML 4.0 Transitional//EN&&
&p&Loading ...&/p&
&&在src目录下,新建一个struts.xml(名字的拼写很重要,这个名字不能随便命名)文件,内容如下:
&?xml version=&1.0& encoding=&UTF-8& ?&
&!DOCTYPE struts PUBLIC
&-//Apache Software Foundation//DTD Struts Configuration 2.0//EN&
&D:\struts-2.2.3.1\src\core\src\main\resources\struts-2.0.dtd&&
&constant name=&struts.enable.DynamicMethodInvocation& value=&true& /&
&constant name=&struts.devMode& value=&true& /&
&package name=&default& namespace=&/& extends=&struts-default&&
&action name=&Login& class=&com.struts.action.LoginAction&&
&result name=&error&&/pages/error.jsp&/result&
&result name=&success&&/pages/success.jsp&/result&
&/package&
&D:\struts-2.2.3.1\src\core\src\main\resources\struts-2.0.dtd&在头部有这样一句话,这是我把struts-2.0.dtd原来的路径换成我本地的了,原来的一直有警告,不过,我换成本地的还是有警告,不知道是为什么。。。这个struts-2.0.dtd&就是struts-2.2.3.1这个包里的,目录就是struts-2.2.3.1\src\core\src\main\resources\struts-2.0.dtd,你把struts-2.0.dtd这个文件放到自己本地后,把本地目录替换成我上面的那句话就行了。
&package name=&default& namespace=&/& extends=&struts-default&&
&action name=&Login& class=&com.struts.action.LoginAction&&
&result name=&error&&/pages/error.jsp&/result&
&result name=&success&&/pages/success.jsp&/result&
&/package&
这里的package里的name=“default&这个名字是随便给的,namespace=&/&这个是固定的,extends=&struts-default&好像也是固定的。
action里的name与下面的login.jsp里form里的action属性名要保持一致,class即为Action里的全路径,result 里的name=&error&,这里的error&#20540;与等会下面的LoginAction.java里的return后的&#20540;保持一致即可,即要跳转的页面啦。
&&&&& 现在,再在WebContent目录下新建一个文件夹pages,在此文件夹中存放jsp页面。我这里新建了三个jsp页面,即login.jsp、success.jsp、error.jsp.
分别如下所示:
login.jsp,这里可以用S标签来做,就几行就可以了,我写的比较繁杂了。
&%@ page language=&java& contentType=&text/ charset=utf-8&
pageEncoding=&utf-8&%&
&!DOCTYPE html PUBLIC &-//W3C//DTD HTML 4.01 Transitional//EN& &http://www.w3.org/TR/html4/loose.dtd&&
&meta http-equiv=&Content-Type& content=&text/ charset=utf-8&&
&title&User Login&/title&
&form action=&/struts2-examples/Login.action& method=&post&&
&table align=&left& width=&50%& border=&0& cellpadding=&0&
cellspacing=&0&&
&td height=&30& bgcolor=&& align=&center& valign=&middle&&用户名:&/td&
&td align=&left& height=&30& valign=&middle&&&input
style=&width: 150px& type=&text& name=&username& value=&&&&/input&&/td&
&td height=&30& bgcolor=&& align=&center& valign=&middle&&密 码:&/td&
&td align=&left& height=&30& valign=&middle&&&input
style=&width: 150px& type=&password& name=&password& value=&&&&/input&&/td&
&td align=&right&&&input type=&submit& name=&button& value=&提交&&&/input&&/td&
&form action=&/struts2-examples/Login.action& method=&post&&上面里的这段话很重要、很重要。我之前因为这路径,浪费了不少时间。“struts2-examples”即为项目名字,“/Login.action”与struts.xml里的action里的name属性要保持一致。刚刚在上面已提到。这里加上这句话,运行时即“”会以此地址来运行。
点击提交按钮后,若成功,则跳转到success.jsp页面。
&%@ page language=&java& contentType=&text/ charset=utf-8&
pageEncoding=&utf-8&%&
&!DOCTYPE html PUBLIC &-//W3C//DTD HTML 4.01 Transitional//EN& &http://www.w3.org/TR/html4/loose.dtd&&
&meta http-equiv=&Content-Type& content=&text/ charset=utf-8&&
&title&login success&/title&
&center&Login Success!!!&/center&
点击提交按钮后,若失败,则跳转到error.jsp页面。
&%@ page language=&java& contentType=&text/ charset=utf-8&
pageEncoding=&utf-8&%&
&!DOCTYPE html PUBLIC &-//W3C//DTD HTML 4.01 Transitional//EN& &http://www.w3.org/TR/html4/loose.dtd&&
&meta http-equiv=&Content-Type& content=&text/ charset=utf-8&&
&title&login error&/title&
&center&login error!!!&/center&
&& 再在src目录下新建一个包,包名为com.struts.action,里面再新建一个类,类名为LoginAction.java,一定要继承“ActionSupport”
LoginAction.java代码如下:
package com.struts.
import com.opensymphony.xwork2.ActionS
public class LoginAction extends ActionSupport {
public String getUsername() {
public void setUsername(String username) {
this.username =
public String getPassword() {
public void setPassword(String password) {
this.password =
public String execute() throws Exception {
if (username.equalsIgnoreCase(&zhangqin&)
&& password.equalsIgnoreCase(&1314520&)) {
return &success&;
return &error&;
这里return后的“success&与“error&即与struts.xml里的一定要保持一致。
提醒一下:在eclipse内部运行时,我明明修改了,可重启Tomcat后,还是没有变成我最新修改的,一直有缓存,而且清不掉。所以,最好到外面的浏览器去运行。
其实很简单哦,这是我自己手动搭建的。一开始老是出现一些莫名其妙的问题。
问题如下:
&包没有导全、index.html给丢了、login.jsp里的action路径写的有问题、等等。
这些错误都是因为自己对这个框架的不了解导致的,经过,这一折腾,我已经有点小明白了。
标记一下,以免以后过段时间自己又忘记。
错误肯定没有的,因为这是我自己运行好的。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:23280次
排名:千里之外
评论:44条
(2)(1)(2)(7)(2)(1)

我要回帖

更多关于 unitypackage 导入 的文章

 

随机推荐