具体是参见http://blog.csdn.net/zhwycan/article/details/7274863仿写的:
package sina.CreAmazing.voice;
import java.util.ArrayList;import com.iflytek.speech.RecognizerResult;  
import com.iflytek.speech.SpeechError;  
import com.iflytek.speech.SynthesizerPlayer;  
import com.iflytek.ui.RecognizerDialog;  
import com.iflytek.ui.RecognizerDialogListener;  
import com.iflytek.ui.SynthesizerDialog;  
import com.iflytek.ui.SynthesizerDialogListener;  import android.app.Activity;  
import android.os.Bundle;  import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.EditText; public class MainActivity extends Activity {/*
 * 声明控件
 * */
private EditText et = null;
private Button bt1 = null;
private Button bt2 =null;
private Button bt3 =null;

    String text = "";
    private static final String  APPID = "appid=4f2d3a06";
    
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

/*初始化控件*/
et = (EditText) findViewById(R.id.et);
bt1 = (Button)findViewById(R.id.bt_recognize);
bt2 = (Button)findViewById(R.id.bt_speek);
bt3 =(Button)findViewById(R.id.bt_speek_bg);

// 初始化监听器  
        initListener();  

} private void initListener() {
// TODO Auto-generated method stub
bt1.setOnClickListener(myListener);  
        bt2.setOnClickListener(myListener);  
        bt3.setOnClickListener(myListener); 
}    OnClickListener myListener = new OnClickListener() {  
       
        @Override  
        public void onClick(View v) {  
            // 根据不同View的id调用不同方法  
            switch (v.getId()) {  
            case R.id.bt_recognize:  
                // 这是语言识别部分,最重要的实例化一个  
                // RecognizerDialog并把你在官方网站申请的appid填入进去,非法id不能进行识别  
                RecognizerDialog isrDialog = new RecognizerDialog(  
                       MainActivity.this, APPID);  
  
                /* 
                 * 设置引擎目前支持五种 ”sms”:普通文本转写 “poi”:地名搜索 ”vsearch”:热词搜索 
                 * ”video”:视频音乐搜索 ”asr”:命令词识别 
                 */  
                isrDialog.setEngine("sms", null, null);  
                isrDialog.setListener(recoListener);  
                isrDialog.show();  
                break;  
            case R.id.bt_speek:  
                // 这是语言合成部分 同样需要实例化一个SynthesizerDialog ,并输入appid  
                SynthesizerDialog syn = new SynthesizerDialog(  
                        MainActivity.this, APPID);  
                syn.setListener(new SynthesizerDialogListener() {  
  
                    @Override  
                    public void onEnd(SpeechError arg0) {  
  
                    }  
                });  
                // 根据EditText里的内容实现语音合成  
                syn.setText(et.getText().toString(), null);  
                syn.show();  
                break;  
            case R.id.bt_speek_bg:  
                // 这是后台朗读,实例化一个SynthesizerPlayer  
                SynthesizerPlayer player = SynthesizerPlayer  
                        .createSynthesizerPlayer(  MainActivity.this, APPID);  
                // 设置语音朗读者,可以根据需要设置男女朗读,具体请看api文档和官方论坛  
                player.setVoiceName("vivixiaomei");  
                player.playText(et.getText().toString(), "ent=vivi21,bft=5",  
                        null);  
                break;  
            default:  
                break;  
            }  
  
        }  
    };  
    // 语言识别监听器,有两个方法  
    RecognizerDialogListener recoListener = new RecognizerDialogListener() {  
  
        @Override  
        public void onResults(ArrayList<RecognizerResult> results,  
                boolean isLast) {  
            // 服务器识别完成后会返回集合,我们这里就只得到最匹配的那一项  
            text += results.get(0).text;  
            System.out.println(text);  
        }  
  
        @Override  
        public void onEnd(SpeechError error) {  
            if (error == null) {  
                // 完成后就把结果显示在EditText上  
                et.setText(text);  
            }  
  
        }  
  
    };  
  
 }
Log信息:
06-10 01:54:49.265: I/dalvikvm(1386): Could not find method com.iflytek.speech.SynthesizerPlayer.createSynthesizerPlayer, referenced from method sina.CreAmazing.voice.MainActivity$1.onClick
06-10 01:54:49.265: W/dalvikvm(1386): VFY: unable to resolve static method 3281: Lcom/iflytek/speech/SynthesizerPlayer;.createSynthesizerPlayer (Landroid/content/Context;Ljava/lang/String;)Lcom/iflytek/speech/SynthesizerPlayer;
06-10 01:54:49.275: D/dalvikvm(1386): VFY: replacing opcode 0x71 at 0x004c
06-10 01:54:49.275: D/dalvikvm(1386): DexOpt: unable to opt direct call 0x0cd4 at 0x0f in Lsina/CreAmazing/voice/MainActivity$1;.onClick
06-10 01:54:49.296: D/dalvikvm(1386): DexOpt: unable to opt direct call 0x0cd8 at 0x28 in Lsina/CreAmazing/voice/MainActivity$1;.onClick
06-10 01:54:49.296: I/dalvikvm(1386): Failed resolving Lsina/CreAmazing/voice/MainActivity$1$1; interface 461 'Lcom/iflytek/ui/SynthesizerDialogListener;'
06-10 01:54:49.296: W/dalvikvm(1386): Link of class 'Lsina/CreAmazing/voice/MainActivity$1$1;' failed
06-10 01:54:49.296: D/dalvikvm(1386): DexOpt: unable to opt direct call 0x0d7f at 0x2d in Lsina/CreAmazing/voice/MainActivity$1;.onClick
06-10 01:54:49.305: D/AndroidRuntime(1386): Shutting down VM
科大讯飞Android