Java 通过套接字传输数据的问题

Java 通过套接字传输数据的问题,java,android,sockets,Java,Android,Sockets,我决定用Java学习网络编程,并从套接字开始。首先,我决定创建一个Android聊天客户端,在其中可以实时聊天,数据通过套接字传输。为了理解这一原理,首先我只需为最简单的客户机-服务器连接重写代码。但是,当尝试连接到服务器(Android设备-客户端、计算机-服务器)时,会引发ClassNotFoundException: I/System.out: [socket]:check permission begin! W/System: ClassLoader referenced unknown

我决定用Java学习网络编程,并从套接字开始。首先,我决定创建一个Android聊天客户端,在其中可以实时聊天,数据通过套接字传输。为了理解这一原理,首先我只需为最简单的客户机-服务器连接重写代码。但是,当尝试连接到服务器(Android设备-客户端、计算机-服务器)时,会引发ClassNotFoundException:

I/System.out: [socket]:check permission begin!
W/System: ClassLoader referenced unknown path: system/framework/mediatek-cta.jar
I/System.out: [socket] e:java.lang.ClassNotFoundException: com.mediatek.cta.CtaUtils
我在清单中获得了连接到Internet的权限,我在单独的线程中创建了连接

客户端代码:

try {
    InetAddress addr = InetAddress.getByName("26.242.96.221");
    Socket socket = new Socket(addr, 8080);

    System.out.println("socket = " + socket);
    BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

    PrintWriter out = new PrintWriter(new BufferedWriter(
                        new OutputStreamWriter(socket.getOutputStream())), true);
        for (int i = 0; i < 10; i++) {
            out.println("howdy " + i);
            String str = in.readLine();
            System.out.println(str);
        }
        out.println("END");
    }catch (Exception e){
        e.printStackTrace();
}
我找到了这个答案:

联发科修补了这些库,以添加对HTTP请求的控制。它尝试动态加载在/system/framework/mediatek-cta.jar中定义的一些方法,但在您的android设备的文件系统中可能不存在或无法访问这些方法

因此,我的设备不能与套接字一起工作吗?如果没有,您如何在设备之间传输数据(文本、音乐、在线广播)?我将不胜感激


(我用谷歌翻译,对不起我的英语翻译)

一切都变得非常简单:事实上,我连接到一台服务器(计算机),它通过Wi-Fi访问互联网,在我的Android设备上使用移动网络,什么都没发生。但当我将手机连接到Wi-Fi网络时,一切正常。我怎么知道的

I / System.out: [socket]: check permission begin!
W / System: ClassLoader referenced unknown path: system / framework / mediatek-cta.jar
I / System.out: [socket] e: java.lang.ClassNotFoundException: com.mediatek.cta.CtaUtils

这不是一个错误,而是一个警告,与Android上的Mediatek正在尝试查找一个类有关,但它不在设备的文件系统中。这并不影响工作。仍然需要了解如何通过任何连接连接到计算机

去掉getByName(),用新的套接字('26.242.96.221',8080)启动套接字;该ip属于…?是本地ip吗?哪个语句导致类未找到异常?当然,您可以在android应用程序中使用套接字。@blackapps,这是我从android访问的计算机的ipdevice@blackapps,这些异常是由Android系统本身造成的。
I / System.out: [socket]: check permission begin!
W / System: ClassLoader referenced unknown path: system / framework / mediatek-cta.jar
I / System.out: [socket] e: java.lang.ClassNotFoundException: com.mediatek.cta.CtaUtils