瀏覽代碼

Merge remote-tracking branch 'origin/master'

aaron 8 年之前
父節點
當前提交
5d692ce1e5

+ 3 - 1
onecable/src/main/java/com/ntels/onecable/common/Constants.java

@@ -978,7 +978,8 @@ public interface Constants {
    * WebSocket API 분류 코드
    */
   public static final int WEBSOCKET_SEND_AUTH = 1001;
-  public static final int WEBSOCKET_SEND_CONNECT_AUTH = 1002;
+  public static final int WEBSOCKET_SEND_AUTH_AUTO = 1002;
+  public static final int WEBSOCKET_SEND_CONNECT_AUTH = 1003;
 
   public static final int WEBSOCKET_SEND_DEVICE_REGISTER = 2001;
   public static final int WEBSOCKET_SEND_DEVICE_DELETE = 2002;
@@ -1001,6 +1002,7 @@ public interface Constants {
    * WebSocket Message Type
    */
   public static final String WEBSOCKET_TYPE_AUTH = "auth";
+  public static final String WEBSOCKET_TYPE_AUTH_AUTO = "auth.auto";
   public static final String WEBSOCKET_TYPE_ONLINE = "online";
   public static final String WEBSOCKET_TYPE_CONN = "conn";
 

+ 9 - 0
onecable/src/main/java/com/ntels/onecable/common/websocket/WebSocketSender.java

@@ -91,6 +91,15 @@ public class WebSocketSender {
         send(util.MapToJson(hmParams));
     }
 
+    /**
+     * 자동 로그인
+     *
+     * @param hmParams Request parameter
+     */
+    public void sendClientAuthAuto(HashMap<String, Object> hmParams) {
+        send(util.MapToJson(hmParams));
+    }
+
     /**
      * 홈허브 삭제.
      *

+ 4 - 0
onecable/src/main/java/com/ntels/onecable/common/websocket/WebSocketService.java

@@ -401,6 +401,10 @@ public class WebSocketService extends Service {
                 // 임시
                 webSocketSender.sendClientAuth(hmParams);
                 break;
+            case Constants.WEBSOCKET_SEND_AUTH_AUTO:
+                // 임시
+                webSocketSender.sendClientAuthAuto(hmParams);
+                break;
             case Constants.WEBSOCKET_SEND_DEVICE_REGISTER:
                 webSocketSender.sendDeviceRegister(hmParams);
                 break;

+ 41 - 6
onecable/src/main/java/com/ntels/onecable/view/Login.java

@@ -100,7 +100,10 @@ public class Login extends CustomActivity implements View.OnClickListener, Custo
                     public void run() {
                         if (messageType.equals(Constants.WEBSOCKET_TYPE_AUTH)) {
                             resultWsAuth(jsonObject);
+                        } else if (messageType.equals(Constants.WEBSOCKET_TYPE_AUTH_AUTO)) {
+                            resultWsAuth(jsonObject);
                         } else {
+
                     /*final String finalResultMsg = resultMsg;
                     runOnUiThread(new Runnable() {
                         @Override
@@ -274,7 +277,7 @@ public class Login extends CustomActivity implements View.OnClickListener, Custo
 
         mUtil.setUserInfo(mActivity);
         mIsSaveId = mAppConfig.getSaveId();
-//        mIsAutoLogin = mAppConfig.getAutoLogin();
+        mIsAutoLogin = mAppConfig.getAutoLogin();
         Dlog.v("mIsAutoLogin =" + mIsAutoLogin);
         Dlog.v("mIsSaveId =" + mIsSaveId);
         mUtil.getView(mActivity, R.id.llAutoLogin).setSelected(mIsAutoLogin);
@@ -507,6 +510,22 @@ public class Login extends CustomActivity implements View.OnClickListener, Custo
         mWebSocketService.send(Constants.WEBSOCKET_SEND_AUTH, sendParams);
     }
 
+    /**
+     * 자동로그인  로그인 요청.
+     */
+    private void sendWsMemberAuthAuto() {
+
+        HashMap<String, Object> sendParams = new HashMap<>();
+        sendParams.put(Constants.KEY_MESSAGE_TYPE, Constants.WEBSOCKET_TYPE_AUTH_AUTO);
+
+        sendParams.put(Constants.KEY_AUTHORIZATION_REPLY, mAppConfig.getAuthorization());
+        sendParams.put(Constants.KEY_OS_TYPE, Constants.OS_TYPE);
+        sendParams.put(Constants.KEY_DEVICE_TOKEN, mAppConfig.getPush_Token());
+        Dlog.v(sendParams);
+        mWebSocketService.send(Constants.WEBSOCKET_SEND_AUTH_AUTO, sendParams);
+    }
+
+
 //    /**
 //     * 멤버 로그인 요청.
 //     */
@@ -672,9 +691,15 @@ public class Login extends CustomActivity implements View.OnClickListener, Custo
                 mAppConfig.setLogin(true);
 
                 //인증 토큰
-                String authToken = mUtil.null2string(joResult.get(Constants.KEY_AUTH_TOKEN));
-                //공통 변수 입력
-                mAppConfig.setAuthToken(authToken);
+                String authToken = "";
+                if (joResult2.has(Constants.KEY_AUTH_TOKEN)) {
+                    authToken = mUtil.null2string(joResult.get(Constants.KEY_AUTH_TOKEN));
+                    //공통 변수 입력
+                    mAppConfig.setAuthToken(authToken);
+                } else {
+                    authToken = mAppConfig.getAuthToken();
+                }
+
 
                 //db 입력작업
                 SQLiteDatabase db = DatabaseOpenHelper.getInstance(mActivity).getWritableDatabase();
@@ -798,11 +823,13 @@ public class Login extends CustomActivity implements View.OnClickListener, Custo
             mType = msg.what;
             switch (msg.what) {
                 case MSG_COM_P_MEMBER_LOGIN:
-                    sendWsMemberAuth();
+//                    sendWsMemberAuth();
+                    new CallWithDelayHandler(mActivity).callWithDelay("getWebSocketState", "sendWsMemberAuth");
                     break;
                 case MSG_COM_G_MEMBER:
                     // 추후 바
-                    sendWsMemberAuth();
+//                    sendWsMemberAuth();
+                    new CallWithDelayHandler(mActivity).callWithDelay("getWebSocketState", "sendWsMemberAuthAuto");
                     break;
                 default:
                     break;
@@ -810,4 +837,12 @@ public class Login extends CustomActivity implements View.OnClickListener, Custo
             return true;
         }
     }
+
+    private Boolean getWebSocketState(){
+        Boolean isWebSocketState = false;
+        if (mWebSocketService.isWebSocketConnected()) {
+            isWebSocketState = true;
+        }
+        return  isWebSocketState;
+    }
 }