11# XAndroidSocket
22Socket封装,支持TCP/UDP客户端和服务端,支持自定义粘包处理、验证处理、解析处理。
33##使用
4- 详见目录[ TCP/UDP使用demo] [ https://github.com/Blankeer/XAndroidSocket/tree/master/app/src/main/java/com/blanke/xandroidsocket ]
4+ 详见目录[ TCP/UDP使用demo] ( https://github.com/Blankeer/XAndroidSocket/tree/master/app/src/main/java/com/blanke/xandroidsocket )
55下的例子,使用简单。
66其中只有TCP才支持支持粘包处理、验证处理、解析处理。
77##粘包处理
88提供的粘包处理有
9- - [ 不处理] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/BaseStickPackageHelper.java ] (默认)
10- - [ 首尾特殊字符处理] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/SpecifiedStickPackageHelper.java ]
11- - [ 固定长度处理] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/StaticLenStickPackageHelper.java ]
12- - [ 动态长度处理] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/VariableLenStickPackageHelper.java ]
13- 支持自定义粘包处理,只需要实现[ AbsStickPackageHelper] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/AbsStickPackageHelper.java ] 接口,
9+ - [ 不处理] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/BaseStickPackageHelper.java ) (默认)
10+ - [ 首尾特殊字符处理] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/SpecifiedStickPackageHelper.java )
11+ - [ 固定长度处理] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/StaticLenStickPackageHelper.java )
12+ - [ 动态长度处理] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/VariableLenStickPackageHelper.java )
13+ 支持自定义粘包处理,只需要实现[ AbsStickPackageHelper] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/stickpackage/AbsStickPackageHelper.java ) 接口,
1414``` java
1515/**
1616 * 接受消息,粘包处理的helper,通过inputstream,返回最终的数据,需手动处理粘包,返回的byte[]是我们预期的完整数据
@@ -22,7 +22,7 @@ public interface AbsStickPackageHelper {
2222```
2323把接收消息的InputStream给你,你返回一个完整包的byte[ ] 给我。
2424##验证处理
25- 提供的验证处理是 [ 不处理] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/validation/BaseValidationHelper.java ] ,也是默认的。
25+ 提供的验证处理是 [ 不处理] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/validation/BaseValidationHelper.java ) ,也是默认的。
2626自定义验证处理需要实现` AbsValidationHelper ` :
2727``` java
2828public interface AbsValidationHelper {
@@ -31,8 +31,8 @@ public interface AbsValidationHelper {
3131```
3232把完整的数据包给你,你需要返回是否验证通过,一般的自定义协议里都会有MD5验证,可以在这里验证。
3333##解析处理
34- 提供的解析处理是 [ 不处理] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/decode/BaseDecodeHelper.java ] ,也是默认的
35- 自定义解析处理需要实现[ AbsDecodeHelper] [ https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/decode/AbsDecodeHelper.java ]
34+ 提供的解析处理是 [ 不处理] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/decode/BaseDecodeHelper.java ) ,也是默认的
35+ 自定义解析处理需要实现[ AbsDecodeHelper] ( https://github.com/Blankeer/XAndroidSocket/blob/master/lib/src/main/java/com/blanke/xsocket/tcp/client/helper/decode/AbsDecodeHelper.java )
3636``` java
3737/**
3838 * 解析消息的处理
0 commit comments