diff --git a/3.4.0.VERSION b/3.4.0.VERSION
index fbcbf73..a0cd9f0 100644
--- a/3.4.0.VERSION
+++ b/3.4.0.VERSION
@@ -1 +1 @@
-3.4.0
\ No newline at end of file
+3.1.0
\ No newline at end of file
diff --git a/README.md b/README.md
index 1aae900..f9234f3 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
### 说明:
此开源版本为基础功能版本,只有消息推送的基础功能!netty版本,和mina版本结构和功能完全一致,大家可以选择自己喜欢的或者合适的版本学习或者使用!
-### 侣信专业版2.4.0版本发布
+### 侣信专业版2.3.0版本发布
### [http://farsunset.com](http://farsunset.com)
diff --git a/cim_for_mina/cim-android-sdk/.classpath b/cim_for_mina/cim-android-sdk/.classpath
index a46165e..b7cde6d 100644
--- a/cim_for_mina/cim-android-sdk/.classpath
+++ b/cim_for_mina/cim-android-sdk/.classpath
@@ -5,6 +5,6 @@
-
+
diff --git a/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java b/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java
index eae048b..d25ea3c 100644
--- a/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java
+++ b/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java
@@ -33,6 +33,8 @@ class CIMCacheManager {
public static final String KEY_ACCOUNT = "KEY_ACCOUNT";
+ public static final String KEY_DEVICE_ID = "KEY_DEVICE_ID";
+
public static final String KEY_MANUAL_STOP = "KEY_MANUAL_STOP";
public static final String KEY_CIM_DESTROYED = "KEY_CIM_DESTROYED";
diff --git a/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMPushManager.java b/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMPushManager.java
index 9bff670..3a39d26 100644
--- a/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMPushManager.java
+++ b/cim_for_mina/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMPushManager.java
@@ -26,7 +26,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
-import android.telephony.TelephonyManager;
+import android.text.TextUtils;
import com.farsunset.cim.sdk.android.constant.CIMConstant;
import com.farsunset.cim.sdk.android.model.SentBody;
@@ -125,12 +125,16 @@ public class CIMPushManager {
CIMCacheManager.putBoolean(context,CIMCacheManager.KEY_MANUAL_STOP, false);
CIMCacheManager.putString(context,CIMCacheManager.KEY_ACCOUNT, account);
- String imei = ((TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE)).getDeviceId();
- imei += context.getPackageName();
+ String deviceId = CIMCacheManager.getString(context,CIMCacheManager.KEY_DEVICE_ID);
+ if(TextUtils.isEmpty(deviceId)) {
+ deviceId = UUID.randomUUID().toString().replaceAll("-", "");
+ CIMCacheManager.putString(context,CIMCacheManager.KEY_DEVICE_ID, deviceId);
+ }
+
SentBody sent = new SentBody();
sent.setKey(CIMConstant.RequestKey.CLIENT_BIND);
sent.put("account", account);
- sent.put("deviceId",UUID.nameUUIDFromBytes(imei.getBytes()).toString().replaceAll("-", ""));
+ sent.put("deviceId",deviceId);
sent.put("channel", "android");
sent.put("device",android.os.Build.MODEL);
sent.put("version",getVersionName(context));
diff --git a/cim_for_mina/cim-client-android/app/libs/cim-android-sdk-3.4.jar b/cim_for_mina/cim-client-android/app/libs/cim-android-sdk-3.4.jar
index da4e4f2..1c8aa7d 100644
Binary files a/cim_for_mina/cim-client-android/app/libs/cim-android-sdk-3.4.jar and b/cim_for_mina/cim-client-android/app/libs/cim-android-sdk-3.4.jar differ
diff --git a/cim_for_mina/cim-server/WebContent/console/nav.jsp b/cim_for_mina/cim-server/WebContent/console/nav.jsp
index 6fa8507..96b7ac6 100644
--- a/cim_for_mina/cim-server/WebContent/console/nav.jsp
+++ b/cim_for_mina/cim-server/WebContent/console/nav.jsp
@@ -11,7 +11,7 @@
Web CIM
+ href="javascript:openWebclient();">CIM for Web
diff --git a/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java b/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java
index eae048b..d25ea3c 100644
--- a/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java
+++ b/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMCacheManager.java
@@ -33,6 +33,8 @@ class CIMCacheManager {
public static final String KEY_ACCOUNT = "KEY_ACCOUNT";
+ public static final String KEY_DEVICE_ID = "KEY_DEVICE_ID";
+
public static final String KEY_MANUAL_STOP = "KEY_MANUAL_STOP";
public static final String KEY_CIM_DESTROYED = "KEY_CIM_DESTROYED";
diff --git a/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMConnectorManager.java b/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMConnectorManager.java
index fb47578..981a3e7 100644
--- a/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMConnectorManager.java
+++ b/cim_for_netty/cim-android-sdk/src/com/farsunset/cim/sdk/android/CIMConnectorManager.java
@@ -201,9 +201,6 @@ class CIMConnectorManager extends SimpleChannelInboundHandler