首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Backendless持久化当前用户登录信息

Backendless持久化当前用户登录信息
EN

Stack Overflow用户
提问于 2016-06-12 20:14:08
回答 1查看 292关注 0票数 1

我有两项活动。第一个检查用户当前是否使用Backendless登录.

代码语言:javascript
运行
复制
    public void checkLogStatusOnSite(){
    AsyncCallback<Boolean> isValidLoginCallBack = new AsyncCallback<Boolean>() {
        @Override
        public void handleResponse(Boolean aBoolean) {
            Toast.makeText(getApplicationContext(), "Boolean is: " + aBoolean, Toast.LENGTH_LONG).show();
        }

        @Override
        public void handleFault(BackendlessFault backendlessFault) {
            Toast.makeText(getApplicationContext(), "Boolean Error: " + backendlessFault, Toast.LENGTH_LONG).show();

        }
    };

    Backendless.UserService.isValidLogin(isValidLoginCallBack);
}

如果是,则启动第二项活动。如果没有,则启动登录片段。用户输入他们的信息,并被带到第二次活动。

当我一次使用这个应用程序时,一切都很好。它打开时,BackEndless API说没有用户登录,我访问了登录片段,登录,并被带到第二个活动。

我的问题是,当我关闭应用程序并重新启动它时,我会被带回登录片段。请注意,我从未从申请中注销过。是否有一种方法来持久化用户登录?例如,如果我在关闭应用程序后启动它,我只是被带到第二个活动?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-13 09:49:36

当你在你的应用程序中输入之后,你想要这样的东西:

代码语言:javascript
运行
复制
    String currentUserObjectId = Backendless.UserService.loggedInUser();

    if (currentUserObjectId != null && currentUserObjectId.length() > 0) {
        try {
            BackendlessDataQuery dataQuery = new BackendlessDataQuery();
            dataQuery.setWhereClause("objectId = '" + currentUserObjectId + "'");

            Backendless.Persistence.of(BackendlessUser.class).find(dataQuery, new AsyncCallback<BackendlessCollection<BackendlessUser>>() {
                @Override
                public void handleResponse(BackendlessCollection<BackendlessUser> response) {
                    List<BackendlessUser> users = response.getCurrentPage();
                    if (users != null && users.size() > 0) {
                        BackendlessUser user = users.get(0);

                        try {
                            Backendless.UserService.setCurrentUser(user);
                        } catch (BackendlessException e) {
                            ...
                        }

                    ...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37778653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档