Trying to fix PickCharacterActivity.java

Thanks.  My first reaction: you are calling User.GetCurrentUser() twice, once just to learn if it will return something useful.  You are also setting or referencing currentUser three times in three lines of code.  When I look a bit farther, I see that you don't even use currentUser inside onCreate (although maybe your intent is to set it as a side-effect of the onCreate() call).  

To answer the original question, you have to be clear about the behavior of the User class and how it is to be used.  If it is reasonable to expect the system to not have a "current user" at times, you should probably have a separate function called hasCurrentUser() that can answer the question "What will getCurrentUser() return if I call it now?" If the system always has a current user, then there is no need to supply a hasCurrentUser() and if something unexpected happens inside getCurrentUser(), you should probably throw an exception instead of requiring all the callers of getCurrentUser() to perform the check.  When you go through that exercise, you will also find that the two if expressions collapse into a single if that has one path if a current user exists, and a shorter path (setting currentUser to null) if not.

Does that make sense?  Did it help?