diff --git a/.idea/deploymentTargetSelector.xml b/.idea/deploymentTargetSelector.xml
new file mode 100644
index 0000000..b268ef3
--- /dev/null
+++ b/.idea/deploymentTargetSelector.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index f34bed1..ca7dff6 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -4,6 +4,7 @@
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 8978d23..9fb9e77 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,6 +1,6 @@
+
-
-
+
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 0000000..16660f1
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/SzyxImSdk/build.gradle b/SzyxImSdk/build.gradle
index ed0776c..ae46538 100644
--- a/SzyxImSdk/build.gradle
+++ b/SzyxImSdk/build.gradle
@@ -36,15 +36,15 @@ android {
dependencies {
- implementation 'androidx.appcompat:appcompat:1.4.2'
- implementation 'com.google.android.material:material:1.5.0'
+ implementation 'androidx.appcompat:appcompat:1.7.0'
+ implementation 'com.google.android.material:material:1.12.0'
testImplementation 'junit:junit:4.13.2'
- androidTestImplementation 'androidx.test.ext:junit:1.1.3'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
+ androidTestImplementation 'androidx.test.ext:junit:1.2.1'
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
//数据库相关
- implementation("androidx.room:room-runtime:2.5.0")
- annotationProcessor ("androidx.room:room-compiler:2.5.0")
+ implementation("androidx.room:room-runtime:2.6.1")
+ annotationProcessor ("androidx.room:room-compiler:2.6.1")
// 网络相关
//Rxjava
@@ -60,6 +60,6 @@ dependencies {
implementation 'org.eclipse.paho:org.eclipse.paho.android.service:1.1.1'
//gson
- implementation 'com.google.code.gson:gson:2.9.0'
+ implementation 'com.google.code.gson:gson:2.10.1'
}
\ No newline at end of file
diff --git a/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/im/manager/ImManager.java b/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/im/manager/ImManager.java
index bedc50e..00fd9f7 100644
--- a/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/im/manager/ImManager.java
+++ b/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/im/manager/ImManager.java
@@ -305,7 +305,7 @@ public class ImManager implements IMInterface {
@Override
public void failed(int code, String error) {
- callback.failed(4001, error);
+ callback.failed(code, error);
}
});
@@ -402,7 +402,7 @@ public class ImManager implements IMInterface {
String msgId3 = (String) msg.obj;
RequestImCallback imCallback = requestMap.get(msgId3);
if (null != imCallback) {
- imCallback.failed(4001, "发送超时");
+ imCallback.failed(400504, "发送超时");
requestMap.remove(msgId3);
}
break;
diff --git a/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/request/RequestManager.java b/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/request/RequestManager.java
index 4cda130..6844dce 100644
--- a/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/request/RequestManager.java
+++ b/SzyxImSdk/src/main/java/cn/org/bjca/trust/android/lib/im/request/RequestManager.java
@@ -13,56 +13,20 @@ import cn.org.bjca.trust.android.lib.im.im.msg.ResultMessage;
public class RequestManager implements RequestInterface {
-
@Override
public void request(String path, Object data, Class clazz, RequestCallback callback) {
-
- RequestMessage rm = new RequestMessage(path, GsonImplHelp.get().toJson(data));
-
- IMHelper.getInstance().request(rm, new RequestImCallback() {
-
- @Override
- public void success(ResultMessage message) {
- Type type = TypeBuilder
- .newInstance(HttpResult.class)
- .addTypeParam(clazz)
- .build();
- HttpResult h = GsonImplHelp.get().toObject(message.getBody(), type);
- if (h.getCode() == 200) {
- callback.success(h);
- } else {
- callback.failed(h.getCode(), h.getMsg());
- }
- }
-
- @Override
- public void failed(int code, String error) {
- if (null != callback) {
- callback.standby(new RequestCallback() {
- @Override
- public void success(HttpResult result) {
- callback.success(result);
- }
-
- @Override
- public void failed(int code, String error) {
- callback.failed(code, error);
- }
-
- @Override
- public void standby(RequestCallback imCallback) {
-
- }
- });
-
- }
- }
-
- });
+ performRequest(path, data, clazz, callback);
}
@Override
public void requestList(String path, Object data, Class clazz, RequestCallback> callback) {
+ performRequest(path, data, TypeBuilder.newInstance(List.class).addTypeParam(clazz).build(), callback);
+ }
+
+ private void performRequest(String path, Object data, Type type, RequestCallback callback) {
+ if (callback == null) {
+ return;
+ }
RequestMessage rm = new RequestMessage(path, GsonImplHelp.get().toJson(data));
@@ -70,23 +34,25 @@ public class RequestManager implements RequestInterface {
@Override
public void success(ResultMessage message) {
- Type type = TypeBuilder
- .newInstance(HttpResult.class)
- .beginSubType(List.class)
- .addTypeParam(clazz)
- .endSubType()
- .build();
- HttpResult> h = GsonImplHelp.get().toObject(message.getBody(), type);
- if (h.getCode() == 200) {
- callback.success(h);
- } else {
- callback.failed(h.getCode(), h.getMsg());
+ try {
+ if (message == null || message.getBody() == null) {
+ callback.failed(-1, "Empty response");
+ return;
+ }
+ HttpResult h = GsonImplHelp.get().toObject(message.getBody(), TypeBuilder.newInstance(HttpResult.class).addTypeParam(type).build());
+ if (h == null || h.getCode() != 200) {
+ callback.failed(h != null ? h.getCode() : -1, h != null ? h.getMsg() : "Unknown error");
+ } else {
+ callback.success(h);
+ }
+ } catch (Exception e) {
+ callback.failed(-1, "Error parsing response: " + e.getMessage());
}
}
@Override
public void failed(int code, String error) {
- if (null != callback) {
+ if (code == 400504) {
callback.standby(new RequestCallback>() {
@Override
public void success(HttpResult> result) {
@@ -103,10 +69,11 @@ public class RequestManager implements RequestInterface {
}
});
-
+ } else {
+ callback.failed(code, error);
}
}
-
});
}
+
}
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 97cb2e0..8f4fe53 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Tue May 16 10:36:25 CST 2023
+#Thu Jan 09 14:11:49 CST 2025
distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
distributionPath=wrapper/dists
-zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists