use*_*122 7 android kill process
以前有人遇到过这种情况吗?我强制在Android设备的设置对话框中停止应用.但是当我使用ps命令时adb它仍然显示在屏幕上.但这个过程不可能得到activityManager.getRunningAppProcesses().这个过程甚至在我卸载这个应用程序后都存在,它发生在随机.
因为我在我的应用程序中打开了一个端口ServerSocket,所以在我停止我的应用程序后无法释放该端口.下次我尝试打开我的应用时,它再次无法使用此端口.
我使用的是华硕EeePad,这个问题似乎只发生在该设备上.
顺便说一下,任何第三方工具(如流程管理器)都无法获取该流程.但它真的存在于pid我使用psvia adb shell列出所有进程的时候.
由于没有代码..这里有一些提示:
1-你关闭你的连接吗???这将是港口繁忙的主要原因。
2-当您的应用程序要暂停、停止或被销毁时,更安全地处理套接字..您可以覆盖 onpause、onstop 或 ondesotry ..并在关闭应用程序之前释放端口。
3-在单独的线程中建立连接并实现一个计时器来检查您是否真的需要该端口(我的意思是您的应用程序是否处于活动状态)并基于该杀死/离开线程(连接)
4-在最坏的情况下..如果您可以控制连接的另一端(服务器、设备..),请尝试使您的解决方案更加灵活,例如首先检查端口范围,然后使用它们是否可用。
祝你好运
| 归档时间: |
|
| 查看次数: |
732 次 |
| 最近记录: |