ASocket es una biblioteca de encapsulación de protocolos TCP/UDP que facilita e implementa rápidamente conexiones largas TCP y comunicaciones UDP de unidifusión, multidifusión, difusión y otras comunicaciones relacionadas.
Gestión unificada de sockets relacionados con TCP/UDP a través de ASocket, lo que lo hace adecuado para Android, llamadas y devolución de llamadas en el subproceso principal de la interfaz de usuario y procesamiento asincrónico del envío y recepción de mensajes en el subproceso
También puedes descargar directamente la aplicación de demostración para experimentar el efecto.
Agregue un repositorio remoto en build.gradle o settings.gradle del proyecto
repositories {
// ...
mavenCentral()
}
Agregue dependencias importadas en build.gradle del módulo
implementation ' com.github.jenly1314:asocket:1.0.0 '
Las direcciones de multidifusión son específicas y las direcciones de clase D se utilizan para la multidifusión. Las direcciones IP de clase D son direcciones IP de multidifusión, es decir, direcciones IP entre 224.0.0.0 y 239.255.255.255, y se dividen en tres categorías: direcciones de multidifusión de conexión local, direcciones de multidifusión reservadas y direcciones de multidifusión de derechos de administración: Direcciones de multidifusión local Dirección de transmisión : entre 224.0.0.0 y 224.0.0.255 Esta es una dirección reservada para protocolos de enrutamiento y otros fines. El enrutador no reenvía paquetes IP que pertenecen a este rango. Dirección de multidifusión reservada: entre 224.0.1.0 y 238.255.255.255, que se puede utilizar globalmente (como Internet) o protocolos de red. Dirección de multidifusión con permiso de administración: entre 239.0.0.0 y 239.255.255.255, que se puede usar dentro de la organización. Es similar a una dirección IP privada y no se puede usar en Internet. El rango de multidifusión puede ser limitado.
//初始化一个ISocket的实现类(如:TCPClient、TCPServer、UDPClient、UDPServer、UDPMulticast)
val tcpClient = TCPClient (host,port)
//初始化ASocket
val aSocket = ASocket (tcpClient)
//设置状态监听
aSocket.setOnSocketStateListener( object : ISocket . OnSocketStateListener {
override fun onStarted () {
}
override fun onClosed () {
}
override fun onException ( e : Exception ) {
}
})
//设置接收消息监听
aSocket.setOnMessageReceivedListener { data ->
// TODO 接收消息
}
//启动
aSocket.start()
// ....
//发送消息
aSocket.write(data)
TCPClientActividad
Actividad del servidor TCP
UDPClientActividad
Actividad del servidor UDP
Actividad de multidifusión UDP
Para obtener más detalles de uso, consulte los ejemplos de uso del código fuente en la demostración o consulte directamente la documentación de ayuda de la API.
Si te gusta ASocket o crees que ASocket te ha ayudado, puedes hacer clic en "Estrella" en la esquina superior derecha para apoyarlo. Tu apoyo es mi motivación, ¿gracias?
También puedes escanear el código QR a continuación y comprarle una taza de café al autor☕
mi blog | GitHub | Casa rural | CSDN | Blog Jardín |
---|---|---|---|---|
Blog de Jenly | jenly1314 | jenly1314 | jenly121 | gelatina |
cuenta pública de wechat | Gmail | buzón QQ | grupo QQ | grupo QQ |
---|---|---|---|---|
Jenly666 | jenly1314 | jenly1314 | 20867961 | 64020761 |