Я занимаюсь разработкой приложения, которое должно выполнить некоторую фоновую работу. По этой причине я использую Сервис. Теперь то, чего я хочу достичь, - предположим, что пользователь начинает фоновую работу, и пока работа загружается, у пользователя есть возможность либо минимизировать приложение, либо дождаться окончания загрузки.
После окончания загрузки я хочу открыть другую активность. Теперь моя проблема предполагает, что пользователь запускает загрузку и минимизирует приложение, затем, когда загрузка заканчивается, пользователь еще не вернулся в приложение, а затем, если я запускаю Экран, даже если у пользователя нет моего приложения в его представлении, пользователь может быть прерван. с его работой.
Итак, я хочу, чтобы по окончании загрузки я хотел открыть только в том случае, если мое приложение видимо для пользователя и если приложение невидимо для пользователя, тогда я хочу подождать, пока пользователь не вернется назад, и только когда пользователь возвращается обратно. Я хочу открыть экран, если загрузка закончена.
Теперь я подумал, что у меня должен быть логический тип, который будет отслеживать, является ли приложение видимым для пользователя. На onStop
я установлю логическое значение на false и onStart
я установлю значение на true. И снова onStart
Я проверю, завершена ли загрузка, и если да, то я открою экран.
Но я хочу знать, есть ли лучший способ добиться этого? Если да, то как. Причина, по которой я ищу лучший способ, заключается в том, что я хочу написать чистый код для своего приложения, который мог бы избежать ошибок и сбоев.