【问题标题】:Android socket programming seems like using SSL as defaultAndroid 套接字编程似乎默认使用 SSL
【发布时间】:2014-08-11 07:23:38
【问题描述】:

鉴于这段代码:

 public void run() {
  try{
    try{
       sockMngr.clientSocket=new Socket();
       sockMngr.clientSocket.connect(new InetSocketAddress("10.0.0.1",1300),7000);
    }
    catch (Exception e){
       System.err.println(e.toString() + " $connection failed.");
    }
    try{
       sockMngr.outs=sockMngr.clientSocket.getOutputStream();
       sockMngr.inps = sockMngr.clientSocket.getInputStream();
    }
    .
    . 
    .

(sockMngr.clientSocket 是一个Socket 对象)。

并使用此write() 函数:

    sockMngr.outs.write(buff,0,256);

在服务器上运行 Wireshark 时,我只能看到 ACKS 的小 tcp 数据包,以及来自发送数据的 Android 设备的传入 SSL 数据包。

因此,我无法查看和分析传输的数据。

为什么会发生这种情况?如何禁用 SSL?

谢谢。

【问题讨论】:

  • 我敢打赌,Wireshark 会根据一些启发式方法调用 SSL 数据包。正如@Remy Lebeau 所说,Android 的套接字类不使用 SSL

标签: android sockets ssl


【解决方案1】:

Android 的 Socket 类不使用 SSL。为此,您必须使用 SSLSocket 类。所以在你的代码之外还有其他事情发生。

【讨论】:

    猜你喜欢
    • 2014-08-17
    • 2021-04-18
    • 2018-06-03
    • 2011-07-17
    • 2022-11-17
    • 2014-07-22
    • 2011-08-19
    • 1970-01-01
    相关资源
    最近更新 更多