使用firebase authWithPassword时定期注销

时间:2015-03-28 23:11:13

标签: javascript ios cordova firebase ionic

我在iOS上有一个使用firebase进行身份验证的phonegap应用。登录就像这样:

  var afterLogin = function(error, authData) {
    if (error) { 
      console.log(error); 
      messenger.error(error.message);
      return;
    }
    $scope.loggedIn = $auth.check();
    $scope.$apply();

    $sync.sync();

    messenger.success('Logged in');
  };

  $scope.doLogin = function() {
    mixpanel.track('login');

    if (!$scope.loginForm.email && !$scope.loginForm.password) {
      messenger.error('Enter email and password then tap login');
      return;
    } else if (!$scope.loginForm.email) {
      messenger.error('Enter your email then tap login');
      return;
    } else if (!$scope.loginForm.password) {
      messenger.error('Enter your password then tap login');
      return;
    }

   ref.authWithPassword({
      email    : $scope.loginForm.email,
      password : $scope.loginForm.password
    }, afterLogin);     
  }

我检查用户的状态如下:

check: function() {
  var authData = ref.getAuth();
  if (authData) {
    mixpanel.identify(authData.uid);
    mixpanel.people.set({
      "$email": authData.password.email
    });
  }      
  return !!authData;
}

最初工作正常,但是用户退出后必须在12-24小时不使用应用后再次登录。也许当应用程序被分流内存?显然这非常令人沮丧,不确定是什么导致了这一点。会话长度设置为24周,仍有问题。

Firebase版本:2.1.2 Angular:1.3.6

使用用户名和密码进行身份验证后记录localStorage: enter image description here enter image description here

退出后一天后回来: enter image description here

cookie的内容(登录或不登录,其中没有firebase内容): enter image description here

1 个答案:

答案 0 :(得分:0)

这是Firebase中的一个参数。

转到Firebase的信息中心。 点击“登录和验证”。

然后在第一段中,有一个输入并选择会话长度。您可以选择所需的小时/周长等。