为了账号安全,请及时绑定邮箱和手机立即绑定

UDP 发送总是在捕获中结束

UDP 发送总是在捕获中结束

智慧大石 2022-07-27 09:47:16
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 应用程序,该应用程序将在按下按钮时通过 udp 发送文本,但它总是最终被捕获..任何想法为什么?我也得到 Error: E/HAL: load: id=gralloc != hmi->id=gralloc 但我不知道如何解决它。有没有我忘记的许可?我只使用(RECORD_AUDIO,INTERNET)
查看完整描述

1 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

查看您的代码,我假设您正在获得一个NetworkOnMainThreadException. Android 不允许在其主线程上进行网络活动,以保持应用程序响应。为避免此错误,请在您的onClick方法中启动一个新线程并在那里执行网络活动



查看完整回答
反对 回复 2022-07-27
  • 1 回答
  • 0 关注
  • 106 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信