Fix potential null pointer in Android fragment's immersive mode implementation

- When immersive mode was implemented in fragments, it worked by getting
the parent activity's application window's decor view.
- Sometimes getActivity() can return null.
- This patch prevents the application from crashing if the view is null,
but also uses AndroidGraphics' view for immersive mode.
- Android fragment starter now uses immersive mode by default like
Android test starter.
- Better exception logging
This patch resolves #2602

This has been tested on a Nexus 7 2013 running Android 5.0 build LRX21P