2016-11-14 2 views
0

Я пытался создать сеанс входа в систему с ключом сеанса, ключ сеанса всегда генерирует новый ключ либо мы выполняем Вход/регистрация, я могу получить данные из моего gsonКак запустить фоновый процесс, чтобы проверить, является ли сеанс пользователя завершен

LoginService loginService = retrofit.create(LoginService.class); 
      Observable<LoginResponse> obs = loginService.logins(emai,pass,"1", Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID), Build.MODEL, Build.VERSION.RELEASE); 
      obs.subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()). 
        subscribe(new Observer<LoginResponse>() { 
         @Override 
         public void onCompleted() { 

         } 

         @Override 
         public void onError(Throwable e) { 

         } 

         public void onNext(LoginResponse loginResponse) { 
          int responses = loginResponse.getCODE(); 
          String texts=""; 
          if(responses == 1) 
          { 
           User user = loginResponse.getDATALIST().get(0); 
           setPrefIsLogin(true); 
           setPrefSessionUid(user.getSESSIONKEY(),user.getUSERID()); 
           nextActivity(); 
          } 
          else{ 
          } 
         } 
        }); 

Вопрос в том, как заставить обработчик обрабатывать сеанс сохранения, если есть другая активность входа с той же учетной записью?

+0

На вашем мобильном устройстве или на другом устройстве? –

+0

@aa_oo на другом мобильном устройстве, чтобы предотвратить множественный вход –

+0

Вы должны сделать это с конца сервера. Если вы узнаете, что ваш accessToken (или пользователь попросил accessToken, во время входа с другого устройства), вы просто не разрешаете этому пользователю входить в систему. Это невозможно сделать с конца вашего устройства, чтобы проверить наличие нескольких функций входа. –

ответ

0

Вы не должны назначать два сеанса доступа/сеанса для одного пользователя. Вы отправите тот же accessToken в другой экземпляр нового пользователя. Плюс сторона, пользователь не сможет дублировать свою работу двумя accessToken.

Если вы хотите принудительно установить другой/первый АВТО-АВГУСТ, вы можете использовать функцию уведомления Firebase для отправки уведомления об этом конкретном идентификаторе устройства и заставить его остановиться. Вы можете проверить учебник firebase, чтобы посмотреть, как они работают. Другая медленная процедура заключается в проверке перед входом в систему &. Каждая другая сторона сервера работает, чтобы проверить, есть ли экземпляр того же пользователя. Вы отправите сообщение об ошибке, и пользовательский абонент получит его и покажет ошибку, сопровождающую выход из системы пользователя.

+1

хорошо, я постараюсь использовать Google Firebase, спасибо многому человеку –

+0

@AldiRenaldiGunawan, в любое время –