Skip to content

Commit f8d6d78

Browse files
author
Deng
committed
retrun progress even not segment
1 parent 6d7a3ea commit f8d6d78

4 files changed

Lines changed: 102 additions & 32 deletions

File tree

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package com.vilyever.androidsocketclient;
2+
3+
import com.vilyever.contextholder.ContextHolder;
4+
5+
import java.io.File;
6+
7+
/**
8+
* FileUtil
9+
* Created by vilyever on 2016/6/1.
10+
* Feature:
11+
*/
12+
public class FileUtil {
13+
final FileUtil self = this;
14+
15+
16+
/* Constructors */
17+
18+
19+
/* Public Methods */
20+
public static File getCacheDir() {
21+
File dir = null;
22+
dir = ContextHolder.getContext().getExternalCacheDir();
23+
if (dir != null && dir.isDirectory()) {
24+
return dir;
25+
}
26+
27+
dir = ContextHolder.getContext().getCacheDir();
28+
if (dir != null && dir.isDirectory()) {
29+
return dir;
30+
}
31+
32+
return dir;
33+
}
34+
35+
/* Properties */
36+
37+
38+
/* Overrides */
39+
40+
41+
/* Delegates */
42+
43+
44+
/* Private Methods */
45+
46+
}

app/src/main/java/com/vilyever/androidsocketclient/MainActivity.java

Lines changed: 44 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import android.os.Bundle;
55
import android.support.annotation.NonNull;
66
import android.support.v7.app.AppCompatActivity;
7+
import android.widget.ImageView;
78

89
import com.vilyever.jsonmodel.JsonModel;
910
import com.vilyever.logger.Logger;
@@ -25,6 +26,9 @@
2526
public class MainActivity extends AppCompatActivity {
2627
final MainActivity self = this;
2728

29+
private ImageView imageView;
30+
protected ImageView getImageView() { if (this.imageView == null) { this.imageView = (ImageView) findViewById(R.id.imageView); } return this.imageView; }
31+
2832
private SocketServer socketServer;
2933
protected SocketServer getSocketServer() {
3034
if (this.socketServer == null) {
@@ -35,10 +39,14 @@ protected SocketServer getSocketServer() {
3539
this.socketServer.getHeartBeatHelper().setSendString("$HB$");
3640
this.socketServer.getHeartBeatHelper().setReceiveString("$HB$");
3741

38-
this.socketServer.getSocketPacketHelper().setSendHeaderData(new byte[]{0x02});
39-
this.socketServer.getSocketPacketHelper().setSendTrailerString("\r\n");
40-
this.socketServer.getSocketPacketHelper().setReceiveHeaderData(new byte[]{0x02});
41-
this.socketServer.getSocketPacketHelper().setReceiveTrailerString("\r\n");
42+
// this.socketServer.getSocketPacketHelper().setSendHeaderData(new byte[]{0x03,0x02});
43+
// this.socketServer.getSocketPacketHelper().setSendTrailerData(new byte[]{0x01,0x03});
44+
// this.socketServer.getSocketPacketHelper().setReceiveHeaderData(new byte[]{0x03,0x02});
45+
// this.socketServer.getSocketPacketHelper().setReceiveTrailerData(new byte[]{0x01,0x03});
46+
this.socketServer.getSocketPacketHelper().setSendHeaderString("_abcd_1f9jsld;af");
47+
this.socketServer.getSocketPacketHelper().setSendTrailerString("jrjgofnosd9[;[];3289-sjf");
48+
this.socketServer.getSocketPacketHelper().setReceiveHeaderString("_abcd_1f9jsld;af");
49+
this.socketServer.getSocketPacketHelper().setReceiveTrailerString("jrjgofnosd9[;[];3289-sjf");
4250

4351
this.socketServer.registerSocketServerDelegate(new SocketServerDelegate() {
4452
@Override
@@ -78,10 +86,15 @@ protected SocketClient getLocalSocketClient() {
7886
this.localSocketClient.getHeartBeatHelper().setSendString("$HB$");
7987
this.localSocketClient.getHeartBeatHelper().setReceiveString("$HB$");
8088

81-
this.localSocketClient.getSocketPacketHelper().setSendHeaderData(new byte[]{0x02});
82-
this.localSocketClient.getSocketPacketHelper().setSendTrailerString("\r\n");
83-
this.localSocketClient.getSocketPacketHelper().setReceiveHeaderData(new byte[]{0x02});
84-
this.localSocketClient.getSocketPacketHelper().setReceiveTrailerString("\r\n");
89+
// this.localSocketClient.getSocketPacketHelper().setSendHeaderData(new byte[]{0x03,0x02});
90+
// this.localSocketClient.getSocketPacketHelper().setSendTrailerData(new byte[]{0x01,0x03});
91+
// this.localSocketClient.getSocketPacketHelper().setReceiveHeaderData(new byte[]{0x03,0x02});
92+
// this.localSocketClient.getSocketPacketHelper().setReceiveTrailerData(new byte[]{0x01,0x03});
93+
94+
this.localSocketClient.getSocketPacketHelper().setSendHeaderString("_abcd_1f9jsld;af");
95+
this.localSocketClient.getSocketPacketHelper().setSendTrailerString("jrjgofnosd9[;[];3289-sjf");
96+
this.localSocketClient.getSocketPacketHelper().setReceiveHeaderString("_abcd_1f9jsld;af");
97+
this.localSocketClient.getSocketPacketHelper().setReceiveTrailerString("jrjgofnosd9[;[];3289-sjf");
8598

8699
this.localSocketClient.getSocketPacketHelper().setSegmentLength(4 * 1024);
87100

@@ -108,22 +121,22 @@ public void onResponse(SocketClient client, @NonNull SocketResponsePacket respon
108121

109122
@Override
110123
public void onSendPacketBegin(SocketClient client, SocketPacket packet) {
111-
Logger.log("Local onSendPacketBegin " + packet.getID());
124+
// Logger.log("Local onSendPacketBegin " + packet.getID());
112125
}
113126

114127
@Override
115128
public void onSendPacketCancel(SocketClient client, SocketPacket packet) {
116-
Logger.log("Local onSendPacketCancel " + packet.getID());
129+
// Logger.log("Local onSendPacketCancel " + packet.getID());
117130
}
118131

119132
@Override
120133
public void onSendPacketEnd(SocketClient client, SocketPacket packet) {
121-
Logger.log("Local onSendPacketEnd " + packet.getID());
134+
// Logger.log("Local onSendPacketEnd " + packet.getID());
122135
}
123136

124137
@Override
125138
public void onSendPacketProgress(SocketClient client, SocketPacket packet, float progress) {
126-
Logger.log("Local onSendPacketProgress " + packet.getID() + " progress : " + progress);
139+
// Logger.log("Local onSendPacketProgress " + packet.getID() + " progress : " + progress);
127140
}
128141
});
129142
this.localSocketClient.registerSocketClientReceiveDelegate(new SocketClientReceiveDelegate() {
@@ -134,7 +147,7 @@ public void onResponse(SocketClient client, @NonNull SocketResponsePacket respon
134147

135148
@Override
136149
public void onHeartBeat(SocketClient socketClient) {
137-
Logger.log("Local onHeartBeat ");
150+
// Logger.log("Local onHeartBeat ");
138151
}
139152
});
140153
}
@@ -151,12 +164,12 @@ protected MainActivity setServerListeningSocketServerClient(SocketServerClient s
151164
this.serverListeningSocketServerClient.registerSocketClientDelegate(new SocketClientDelegate() {
152165
@Override
153166
public void onConnected(SocketClient client) {
154-
Logger.log("Server onConnected");
167+
// Logger.log("Server onConnected");
155168
}
156169

157170
@Override
158171
public void onDisconnected(SocketClient client) {
159-
Logger.log("Server onDisconnected");
172+
// Logger.log("Server onDisconnected");
160173
}
161174

162175
@Override
@@ -167,22 +180,23 @@ public void onResponse(SocketClient client, @NonNull SocketResponsePacket respon
167180

168181
@Override
169182
public void onSendPacketBegin(SocketClient client, SocketPacket packet) {
170-
Logger.log("Server onSendPacketBegin " + packet.getID());
183+
// Logger.log("Server onSendPacketBegin " + packet.getID());
171184
}
172185

173186
@Override
174187
public void onSendPacketCancel(SocketClient client, SocketPacket packet) {
175-
Logger.log("Server onSendPacketCancel " + packet.getID());
188+
// Logger.log("Server onSendPacketCancel " + packet.getID());
176189
}
177190

178191
@Override
179192
public void onSendPacketEnd(SocketClient client, SocketPacket packet) {
180-
Logger.log("Server onSendPacketEnd " + packet.getID());
193+
// Logger.log("Server onSendPacketEnd " + packet.getID());
194+
181195
}
182196

183197
@Override
184198
public void onSendPacketProgress(SocketClient client, SocketPacket packet, float progress) {
185-
Logger.log("Server onSendPacketProgress " + packet.getID() + " progress : " + progress);
199+
// Logger.log("Server onSendPacketProgress " + packet.getID() + " progress : " + progress);
186200
}
187201
});
188202
this.serverListeningSocketServerClient.registerSocketClientReceiveDelegate(new SocketClientReceiveDelegate() {
@@ -193,6 +207,7 @@ public void onResponse(SocketClient client, @NonNull SocketResponsePacket respon
193207
}
194208
else {
195209
Logger.log("Server onResponse 【" + responsePacket.getMessage().substring(0, 100) + "】");
210+
Logger.log("Server onResponse length 【" + responsePacket.getData().length + "】");
196211
}
197212
}
198213

@@ -236,18 +251,19 @@ public void run() {
236251
protected Void doInBackground(Void... params) {
237252
self.getLocalSocketClient().sendString("ABC");
238253

239-
TestModel testModel = new TestModel();
240-
testModel.subModels = new ArrayList<TestSubModel>();
241-
for (int i = 0; i < 100000; i++) {
242-
TestSubModel subModel = new TestSubModel();
243-
subModel.title = "title " + i;
244-
testModel.subModels.add(subModel);
245-
}
254+
TestModel testModel = new TestModel();
255+
testModel.subModels = new ArrayList<TestSubModel>();
256+
for (int i = 0; i < 10000; i++) {
257+
TestSubModel subModel = new TestSubModel();
258+
subModel.title = "title " + i;
259+
testModel.subModels.add(subModel);
260+
}
246261

247-
SocketPacket packet = self.getLocalSocketClient().sendString(testModel.toJson().toString());
248-
Logger.log("packet size " + packet.getMessage().getBytes().length);
262+
SocketPacket packet = self.getLocalSocketClient().sendString(testModel.toJson().toString());
263+
Logger.log("packet size " + packet.getMessage().getBytes().length);
249264

250265
self.getLocalSocketClient().sendString("一二三");
266+
251267
return null;
252268
}
253269

app/src/main/res/layout/activity_main.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,10 @@
88
<TextView android:text="@string/hello_world" android:layout_width="wrap_content"
99
android:layout_height="wrap_content" />
1010

11+
<ImageView
12+
android:id="@+id/imageView"
13+
android:layout_width="match_parent"
14+
android:layout_height="match_parent"
15+
/>
16+
1117
</RelativeLayout>

socketclient/src/main/java/com/vilyever/socketclient/SocketClient.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -760,6 +760,8 @@ public void run() {
760760

761761
internalBeginSendPacket(packet);
762762

763+
internalUpdateSendProgress(packet);
764+
763765
if (!internalCheckShouldContinueSend(packet)) {
764766
continue;
765767
}
@@ -769,7 +771,7 @@ public void run() {
769771
data = CharsetUtil.stringToData(packet.getMessage(), self.getSocketConfigure().getCharsetName());
770772
}
771773

772-
if (data != null) {
774+
if (data != null && data.length > 0) {
773775
try {
774776
// 发送包头
775777
byte[] headerData = self.getSocketConfigure().getSocketPacketHelper().getSendHeaderData();
@@ -825,10 +827,10 @@ public void run() {
825827
self.getRunningSocket().getOutputStream().write(tailData);
826828
self.getRunningSocket().getOutputStream().flush();
827829

828-
packet.setSendingProgress(1.0f);
829-
internalUpdateSendProgress(packet);
830830
}
831831

832+
packet.setSendingProgress(1.0f);
833+
internalUpdateSendProgress(packet);
832834

833835
internalEndSendPacket(packet);
834836
}
@@ -839,7 +841,7 @@ public void run() {
839841
}
840842
}
841843
catch (InterruptedException e) {
842-
e.printStackTrace();
844+
// e.printStackTrace();
843845
}
844846
}
845847

0 commit comments

Comments
 (0)