Итак, мы делаем проект создания приложения для Android, и мы закончили, но поскольку у нас есть время, я хотел реализовать несколько дополнительных вещей. Одна вещь, которую я хочу реализовать, но я не могу найти нигде, как я могу заставить приложение вернуться к основному действию после простоя в течение определенного времени. Время, я планирую предоставить пользователю возможность выбрать это из настроек, но я хочу узнать, как заставить эту функцию работать сначала перед чем-либо еще. Вся помощь была оценена.Вернуться к mainActivity после простоя Android
1
A
ответ
7
Вы можете добиться этого с помощью обработчика, как показано здесь.
private Handler handler;
private Runnable runnable;
//call in onCreate
setAppIdleTimeout()
private void setAppIdleTimeout() {
handler = new Handler();
runnable = new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
runOnUiThread(new Runnable() {
@Override
public void run() {
// Navigate to main activity
}
});
}
};
handler.postDelayed(runnable, timeoutValue * 1000);
}
//reset timer on user interaction and in onResume
public void resetAppIdleTimeout() {
handler.removeCallbacks(runnable);
handler.postDelayed(runnable, timeoutValue * 1000);
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
resetAppIdleTimeout();
}
@Override
public void onUserInteraction() {
// TODO Auto-generated method stub
Log.i(TAG, "interacted");
resetAppIdleTimeout();
super.onUserInteraction();
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
handler.removeCallbacks(runnable);
super.onDestroy();
}
0
1] Добавить тайм-аут экрана в ваши настройки.
2] Используйте BroadcastReceiver, чтобы вызвать экран ON & OFF situations.You получите ссылку с here
1
вы можете попробовать со следующими способами:
-> Broadcast для ScreenLight ON и OFF
BroadcastReceiver myScreenLightBroadcast = new BroadcastReceiver() {
// This will fire whenever Screen Light will be ON or OFF
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
// Screen Light is On so you can close your all Activity Except your MainActivity
// Or you can move user to MainActivity by starting a NewActivity or Restarting Application
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
// this will call whenever your Screen will OFF
}
}
};
Смежные вопросы
- 1. Android - вернитесь к MainActivity после перезапуска задачи из откликов
- 2. Доступ к данным после простоя
- 3. Android вернуться к предыдущей деятельности
- 4. Вернитесь к MainActivity после нажатия кнопки возврата от MainActivity
- 5. Android: Вернуться к активному
- 6. Android-приложение сбрасывается после некоторого простоя
- 7. как вернуться к основной деятельности в Android?
- 8. Android-приложение падает после длительного простоя
- 9. Android - check вернуться к действию
- 10. вернуться к null после strcat
- 11. Вернуться к странице после сохранения
- 12. setContentView Ошибка в MainActivity Android
- 13. Android onBackPressed() вернуться к предыдущему Фрагмент/Активность
- 14. Закрыть прослушиватель после простоя
- 15. Закрытая форма после простоя
- 16. Android: Вернуться к предыдущей деятельности
- 17. android вернуться к первому экрану
- 18. android вернуться к предыдущему виду
- 19. Как вернуться к методу, android;
- 20. Возврат к MainActivity после паузы/выхода из SecondActivity
- 21. invoke MainActivity после splashscreen
- 22. Android: перейти к первому MainActivity в стеке
- 23. Android: доступ к экземпляру фрагмента из MainActivity
- 24. Android App завершает работу, если вы нажмете кнопку, чтобы вернуться к MainActivity
- 25. Вернуться к предыдущей заявке после выхода?
- 26. Android: Как вернуться к основной деятельности после нажатия?
- 27. Android - как вернуться к исходному экрану после setContentView (img)
- 28. Как вернуться к приложению программно после отправки смс в Android?
- 29. Android Tablet не может вернуться к намерениям после обрезки
- 30. Вернуться к действию после завершения действия в Android?
Вы также можете использовать AsyncTask, хотя на самом деле не нужно в этом случае – Arnab
@Arnab в что AsyncTask вы вызовете Thread.sleep (miliSeconds)? – SilentKiller
Я использовал приведенный выше код, но по какой-то причине, даже несмотря на то, что пользователь взаимодействует с ним, он по-прежнему не работает по истечении времени. Я создал глобальный int 60 для значения тайм-аута и ровно через минуту, он возвращается к основному действию. – user2989280