Android之用java的socket写服务器提示java.net.BindException: Address already in use
生活随笔
收集整理的這篇文章主要介紹了
Android之用java的socket写服务器提示java.net.BindException: Address already in use
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1 問題
在Android activity里面Java socket服務(wù)器,然后關(guān)閉activity再打開activity開啟服務(wù)的時(shí)候提示錯(cuò)誤如下
java.net.BindException: Address already in use很明顯這個(gè),IP和端口的的socket已經(jīng)使用了,我們只需要在關(guān)閉activity的時(shí)候關(guān)閉serverSocket就行了。
2 解決辦法
var serverSocket: ServerSocket? = nullinner class HttpServerThread : Runnable {var TAG = javaClass.namevar context : Context?= nullconstructor(context : Context){this.context = context}override fun run() {Log.i(TAG, "await start")try {//Android9.0以下開啟了熱點(diǎn)服務(wù)器的IP值是192.168.43.1,如果Android版本大于9.0 IP服務(wù)器地址會(huì)隨機(jī)變serverSocket = ServerSocket(SocketContants.HTTP_SERVER_PORT) // serverSocket = ServerSocket(SocketContants.HTTP_SERVER_PORT, 10, InetAddress. //總結(jié)
以上是生活随笔為你收集整理的Android之用java的socket写服务器提示java.net.BindException: Address already in use的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android之GridLayoutMa
- 下一篇: Android之android8.1打开