android中通過ServerSocket創建端口問題



====================問題描述====================
在Activity中通過new ServerSocket(9090)創建了一個服務端口,為何通過netstat命令查看時該端口並沒有打開?
然后在客戶端無論如何也連接不上,這肯定的
代碼:
server=new ServerSocket(12345);
System.out.println("ip:"+server.getLocalSocketAddress()+"----port: "+server.getLocalPort());
System.out.println("服務器ip: "+server.getInetAddress());
System.out.println("服務器搭建成功************");
在logcat中能夠查看到“服務器搭建成功”等所有的輸出,都正常,但就是沒有真正的打開端口

但是如果是在Application程序中直接創建ServerSocket對象的話,就可以打開端口,客戶端連接也正常
求指教!!!
注:
manifest中網絡權限已經加了
    <uses-permission
        android:name="android.permission.INTERNET"></uses-permission>
    <uses-permission
        android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

====================解決方案1====================
模擬器上的端口不是PC上的端口,兩個需要做映射

把本機端口TCP/6100映射到模擬器TCP/7100端口(UDP也是一樣)。
>adb –s emulator-5554 forward tcp:6100 tcp:7100


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM