Android在共享首选项中存储用户会话

时间:2013-05-18 08:52:54

标签: android session sharedpreferences session-state

我想在Android上创建一个用户会话,这样我就不必每次都登录。 应该在共享首选项中存储哪些内容,以便每次我的服务器收到用户请求时都可以进行身份​​验证,以确保人们不会入侵我的系统。

用户可以通过我的应用程序中的以下内容登录

  1. Google
  2. 我是否需要在共享首选项中转换和存储一些加密数据?

    或者只是存储用户电子邮件或用户名就足够了。

1 个答案:

答案 0 :(得分:3)

很容易将凭据存储在共享首选项中当您启动屏幕时,您可以检查它并将用户重定向到下一个屏幕,而无需用户登录谷歌或Facebook。

我使用偏好设置使用facebook和我们自己的服务器登录。为此,我存储了一个布尔变量,用户是登录Facebook或我们自己的服务器,然后如果用户使用我们自己的服务器,那么我们已经在后台调用了webservice,并在用户喜欢的情况下存储了用户高速缓存,如果用户已经使用facebook登录我们有用了

if (Application.prefs.isFacebookLogin()) {
        facebook = new Facebook(Application.APP_ID);
        // Instantiate the asynrunner object for asynchronous api calls.
        SessionStore.restore(facebook);
        SessionEvents.addAuthListener(new FbAPIsAuthListener());
        if (facebook.isSessionValid()) {
            Application.prefs.setAccessTokenFb(facebook
                    .getAccessToken());
            Application.prefs.setExpirationFB(facebook
                    .getAccessExpires());
        }
        // redirectHome();
        // finish();
    }

在此之后,如果creadential正确,我们会将用户重定向到第一个屏幕。