fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
String host = "192.168.4.1";
int port = 2390;
byte[] message = "Som tu".getBytes();
InetAddress address = InetAddress.getByName(host);
DatagramPacket packet = new DatagramPacket(message, message.length, address, port);
DatagramSocket dSocket = new DatagramSocket();
dSocket.send(packet);
dSocket.close();
}
catch(Exception e){
speak("error");
}
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS,3);
mySpeechRecognizer.startListening(intent);
}
});
我正在尝试创建一个Android应用程序,该应用程序将在按下buttuon时通过udp发送文本,但始终会被捕获..有什么想法吗?我也得到错误:E / HAL:负载:id = gralloc!= hmi-> id = gralloc但我不知道如何解决它。 我忘记了任何许可吗?我只使用(RECORD_AUDIO,INTERNET)
答案 0 :(得分:1)
看看您的代码,我假设您得到一个NetworkOnMainThreadException
。 Android不允许在其主线程上进行网络活动以保持应用程序的响应速度。为避免此错误,请在您的onClick
方法内启动一个新线程,并在那里执行网络活动