Problems with parse Query in ParseObject

让人想犯罪 __ 提交于 2019-12-13 03:09:12

问题


I'm having trouble with this query.

What i want to accomplish here is according to the idChatSeleccionadoAppUsuario(KYLmvSGP1…) i can have all the messages and User(Usuario) inside the list. This is what i have tried so far:

 ParseQuery<ParseObject> query = ParseQuery.getQuery("Conversaciones");
    queryChat=ParseObject.createWithoutData("Chat",idChatSeleccionadoAppUsuario);
    query.whereEqualTo("ChatId", queryChat);
    query.include("Usuario");
    query.include("ChatId");
    query.findInBackground(new FindCallback<ParseObject>() {
        @Override
        public void done(List<ParseObject> objects, ParseException e) {
            for (ParseObject obj : objects) {
                mensaje = obj.getString("Mensaje");
                Log.i("UFF", "Este es el mensaje" + mensaje);

                enviaMensaje = (ParseUser) obj.get("Usuario");
                Log.i("UFF", "Este es el usuario del chat---->:" + enviaMensaje.getObjectId());

                chatId = obj.getParseObject("ChatId");
                Log.i("UFF", "Este es el id del chat---->:" + chatId);
                //idChatSeleccionado=chatId.getObjectId();
                listaDeMensajes.add(obj);


            }
            mMessageAdapter = new MessageListAdapter(getContext(), listaDeMensajes);
            mMessageRecycler.setAdapter(mMessageAdapter);
            queryFromChat();


        }
    });

}

And also have tried this one:

 ParseQuery query = ParseQuery.getQuery(“Conversaciones”);
    query.whereEqualTo(“ChatId”, idChatSeleccionadoAppUsuario);
    query.include(“Usuario”);
    query.include(“ChatId”);
    query.findInBackground(new FindCallback() {
    @Override
    public void done(List objects, ParseException e) {
    for (ParseObject obj : objects) {
    mensaje = obj.getString(“Mensaje”);
    Log.i(“UFF”, “Este es el mensaje” + mensaje);
     enviaMensaje = (ParseUser) obj.get("Usuario");
                    Log.i("UFF", "Este es el usuario del chat---->:" + enviaMensaje.getObjectId());

                chatId = obj.getParseObject("ChatId");
                Log.i("UFF", "Este es el id del chat---->:" + chatId);
                //idChatSeleccionado=chatId.getObjectId();
                listaDeMensajes.add(obj);


            }
            mMessageAdapter = new MessageListAdapter(getContext(), listaDeMensajes);
            mMessageRecycler.setAdapter(mMessageAdapter);
            queryFromChat();


        }
    });

  }

At the moment both return listaDeMensajes=0


回答1:


Finally this is the way to retrieve the query... it was always but this post could help a lot of people...

ParseQuery<ParseObject> query = ParseQuery.getQuery("Conversaciones");
    queryChat=ParseObject.createWithoutData("Chat",idChatSeleccionadoAppUsuario);
    query.whereEqualTo("ChatId", queryChat);
    query.include("Usuario");
    query.include("ChatId");
    query.findInBackground(new FindCallback<ParseObject>() {
        @Override
        public void done(List<ParseObject> objects, ParseException e) {
            for (ParseObject obj : objects) {
                mensaje = obj.getString("Mensaje");
                Log.i("UFF", "Este es el mensaje" + mensaje);

                enviaMensaje = (ParseUser) obj.get("Usuario");
                Log.i("UFF", "Este es el usuario del chat---->:" + enviaMensaje.getObjectId());

                chatId = obj.getParseObject("ChatId");
                Log.i("UFF", "Este es el id del chat---->:" + chatId);
                //idChatSeleccionado=chatId.getObjectId();
                listaDeMensajes.add(obj);


            }
            mMessageAdapter = new MessageListAdapter(getContext(), listaDeMensajes);
            mMessageRecycler.setAdapter(mMessageAdapter);
            queryFromChat();


        }
    });

}


来源:https://stackoverflow.com/questions/56047155/problems-with-parse-query-in-parseobject

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!