Android怎么写udp通信的IntentService?

本来想写一个intentService,  oncreate的时候创建socket,然后开启一个发送线程一个接收线程,不同的发送命令写在onHandleIntent中,但是在MainActivity开启了service之后,其他的Activity使用startService进行调用的时候,发现IntentService又从onCreate方法开始走了一遍。

想问的是,这种onCreate方法重复多遍的调用是正常的么?耽误我udp发送和接受么?或者还是不应该用service来写udp的发送和接收?直接两个线程写在mainactivity里?

 

1 这种onCreate方法重复多遍的调用是正常的么?

 答:可能是你的代码逻辑问题,使用start方法打开而不stop, 则由系统根据需要关闭它否则就要杀死应用时关闭。所以根据你的描述,总是oncreate是不正常的,好好检查的代码。在onStop或者onDestroy打印点东西,看看是不是退出了。

2 耽误我udp发送和接受么

答:看代码逻辑啦。回归问题1

3 不应该用service来写udp的发送和接收

答:这个没关系的,看你想实现什么功能。

4 直接两个线程写在mainactivity里

答:都可以

 

建议好好学习,天天向上