我需要改变Android模拟器的一些设置吗?应用可以在Android设备上运行,但无法在模拟器上运行。当我按下转换按钮时,它根本不输出任何语音。我甚至检查了其他应用程序是否通过扬声器输出声音。是的,Youtube可以完美地工作。
package com.example.labpgm7;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import java.util.Locale;
public class MainActivity extends AppCompatActivity {
EditText texttospeak;
Button speak;
TextToSpeech t;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
texttospeak=findViewById(R.id.texttospeech);
t=new TextToSpeech(this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status)
{
}
});
}
public void speak(View v)
{
String text=texttospeak.getText().toString();
t.setPitch(1.0f);
t.setSpeechRate(1.0f);
t.speak(text,TextToSpeech.QUEUE_FLUSH,null);
}
}
TextToSpeech.OnInitListener
的MainActivity
。它在模拟API 30上无法工作,但在API 24上可以工作。 解决API 30的问题是添加清单部分。 - Bernat