Как определить, когда приложение Android переходит на задний план? onPause() работает, но также называется, когда ориентация изменилась.Как определить, когда приложение Android сведено к минимуму?
ответ
Если ориентация меняется приложение будет вызывать через жизненный цикл еще раз, что означает, что из OnCreate
вы можете избежать этого, а также в письменной форме нижеследующее для обозначения манифеста
<activity
android:name=""
android:configChanges="orientation|keyboardHidden|screenLayout|screenSize"
android:label="@string/app_name" />
это говорит системе, что при изменении ориентации или изменениях в клавиатуре или экранеLayout я сам справляюсь с ней, не нужно ее создавать.
затем написать свой код на паузе на
Спасибо. Он отлично работает –
Ok happy encoding –
Попробуйте
@Override
protected void onUserLeaveHint()
{
// When user presses home page
Log.v(TAG, "Home Button Pressed");
super.onUserLeaveHint();
}
Для деталей: https://developer.android.com/reference/android/app/Activity.html#onUserLeaveHint()
Мне нужно завершить работу, когда приложение переходит в фоновый режим. onUserLeaveHint также вызывается при изменении ориентации. Так что это не работает для меня –
Возможная Дубликат [Определение текущего приложения переднего плана от фоновой задачи или службы] (http://stackoverflow.com/questions/2166961/determining-the-current-foreground -application-from-a-background-task-or-service) –