java - 如何在 onCreate 中使用从 parse 方法获取的变量

标签 java parse-platform parse-android-sdk

我在变量和解析查询方面遇到很多麻烦。我的一些解决方案是创建一个方法并将参数放入其中,然后从查询中调用它并插入我需要的值作为参数。但我需要在 onCreate 中使用这些值。当将此变量设置为全局时

ParseObject empresa;
    String stringEmpresa;
    String tipoDeEmpresa;
    String tipoEmpresa;
    String role;

当我在 onCreate 上使用它们时,将值放入查询中,它们为空。

public void parseQuery(){

        ParseQuery<ParseUser> query = ParseUser.getQuery();
        query.include("Empresa");
        query.include("ComercialAsignado");
        query.include("ComercialTallerAsignado");
        query.getInBackground(ParseUser.getCurrentUser().getObjectId(), new GetCallback<ParseUser>() {
            @Override
            public void done(ParseUser object, ParseException e) {

                if (e == null) {
                    queryEmpresa();

                    tipoDeEmpresa = object.getString("tipoDeEmpresa");

                    role = object.getString("Rol");

                    initBottomFromRolUser(role, tipoDeEmpresa);

                    showItemNVFromRol(role, tipoDeEmpresa);

                    initFloatingButton(tipoDeEmpresa);


                }
            }
        });

Query method 我还尝试用另一种方法检索数据,但它检索到错误的数据,这是一个屏幕截图。另一个问题是没有检索我的用户类中显示的所有列,这就是原因

tipoEmpresa=user.getString("tipoDeEmpresa");

这是空的。

另请注意,我的 demo3 角色是管理员,而不是 Usuario。

Current Rol

记住在done方法中设置这些全局变量不允许我在onCreate中使用这些变量

最佳答案

费利佩, 您在此处发布的代码并不反射(reflect)您的屏幕截图中的代码。

请您使用固定的 objectId 进行测试,以便我们知道问题不是来自 ParseUser.getCurrentUser().getObjectId() 吗?

请像这样测试:

final String objectIdOfUser = "LJ9AongycH";
ParseQuery<ParseUser> query = ParseUser.getQuery();
query.getInBackground(objectIdOfUser, new GetCallback<ParseUser>() {
    @Override
    public void done(ParseUser object, ParseException e) {
        if (e == null) {
            // The query was successful, returns the users that matches
            // the criterias.
            System.out.println(objectIdOfUser + " " + object.getString("Rol"));
            System.out.println(objectIdOfUser + " " + object.getString("tipoDeEmpresa"));
        } else {
            // Something went wrong.
        }
    }
});

关于java - 如何在 onCreate 中使用从 parse 方法获取的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57825132/

相关文章:

parse-platform - 在特定日期触发云代码功能

如果互联网连接中断,python + parse.com 上传数据

parse-platform - 解析服务器 - 从包含的对象中选择几个字段

android - 使用 Parse.Could.AfterSave 将关系添加到 ParseObject

java - ParseQuery 适配器无法解析符号

java - Fragment中TextView的空对象引用

java - 如何在BlockingQueue java中优雅地等待作业任务完成

Java replaceAll 因源字符串中的美元符号而失败

swift - 如何使用 Parse 子类和 User 之间的关系 - Swift

Java/ jackson : Deserialize JSON into class with HashMap