-1
if (chat_message.getReceiver().equals("myid") 
    && chat_message.getSender().equals("userid") 
    || chat_message.getReceiver().equals("userid") 
    && chat_message.getSender().equals("myid")
) 

I get this error?

I did everything right, firebase is also right.

When I enter the application, it closes immediately. Does anyone know the reason?

The error I got:

java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference

3
  • 2
    One of chat_message.getReceiver() or .getSender() returns null. Commented Jan 30, 2021 at 16:33
  • You need to format your code and provide a bit more context precise answers. Commented Jan 30, 2021 at 16:34
  • Related: Compare two objects in Java with possible null values Commented Jan 31, 2021 at 10:00

1 Answer 1

1

If the IDs of sender/receiver are constant strings "myid"/"userid" it is better to use Joda (inverted) conditions to prevent NullPointerException:

final String sender = chat_message.getSender();
final String receiver = chat_message.getReceiver();

if (("myid".equals(sender) && "userid".equals(receiver)) 
    || ("myid".equals(receiver) && "userid".equals(sender)) 
) 
Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.