You should not do things like platformRequest in a lifecycle method like startApp() . This is an asynchronous operation, it should ask the user for permission, etc. This should not be done in the system thread.
The methods called by the system thread should return as close as possible to the maximum possible because the thread is likely to be responsible for other things, such as redrawing the screen or handling user input. platformRequest is a blocking operation and will cause the device to freeze.
Some devices can handle this better than others, so you see a mismatch.
Kill the new thread to do platformRequest , and everything should be fine; You can start your new stream almost anywhere.
source share