我需要在 Android 平台上开发一个应用程序,使客户端能够与服务器通信/请求命令,并使服务器能够响应客户端的请求。
我读到了 Netty,我想在我的项目中实现它,但我是套接字编程的新手,它是用 Java 编写的,所以我想在 Android 上实现它并不难。我正在网上寻找示例,但我在为 Android 找到一个好的示例时迷失了方向。
这里有人可以给我一些例子或告诉我如何在我的应用程序中实现这些功能吗?
Netty 同时支持 NIO 和 OIO,但是 Android 已经破坏了对 NIO 的支持,所以你只能使用 OIO(阻塞 I/O)传输。此外,Android 中的 SSLEngine 也坏了,这意味着您无法在 Android 上使用 Netty 实现 SSL。(或者可能使用替代套接字工厂?)
因此,我不建议在 Android 设备上使用 Netty,尽管许多人似乎以某种方式在 Android 上成功使用了 Netty。
Netty 是一个异步事件驱动的网络应用框架。(asynch I/O, Java NIO, high-performance) 我认为Netty对于多客户端连接或多服务器连接来说是一个很有价值的框架。
Android 设备的资源通常非常有限。
我建议您在 android 设备上使用 java 阻塞套接字。
我不建议在 Android 上使用 Netty,因为它使用了一些 Android VM (Dalvik) 无法识别的 javassist 类,例如 javassist.ClassPool 类。取一个好的旧 java 套接字,并将它包装在一个很好的帮助类周围,它应该可以做到。