Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android上以编程方式关闭同一进程中的特定套接字_Android_Linux_Sockets - Fatal编程技术网

如何在Android上以编程方式关闭同一进程中的特定套接字

如何在Android上以编程方式关闭同一进程中的特定套接字,android,linux,sockets,Android,Linux,Sockets,我们的Android应用程序正在使用一些非开源的第三方SDK库(本机CPP) 我们发现,有时库不会像预期的那样正确地关闭某些udp套接字 所以我想手动关闭插座。如何做到这一点的第一个想法是: 迭代/proc/net/udp目录,根据端口号查找目标inode 迭代/proc/$PID/fd目录,通过inode info查找目标fd编号 在我自己的代码中关闭fd 我的问题是: 有没有更好的方法(如以前的API或系统调用)找到目标fd 如果我强制关闭fd,进程是否会崩溃 如果进程没有崩溃,此操作会破坏

我们的Android应用程序正在使用一些非开源的第三方SDK库(本机CPP)

我们发现,有时库不会像预期的那样正确地关闭某些udp套接字

所以我想手动关闭插座。如何做到这一点的第一个想法是:

  • 迭代/proc/net/udp目录,根据端口号查找目标inode
  • 迭代/proc/$PID/fd目录,通过inode info查找目标fd编号
  • 在我自己的代码中关闭fd
  • 我的问题是:

  • 有没有更好的方法(如以前的API或系统调用)找到目标fd
  • 如果我强制关闭fd,进程是否会崩溃
  • 如果进程没有崩溃,此操作会破坏进程中的任何内容吗

  • 向卖主投诉。伙计,这是我现在的选择。供应商没有提供良好的支持。你能就我的问题给我一些提示吗?