2010-09-07 3 views

ответ

7

Используйте «полный» PowerManager.WakeLock как в this post.

например:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); 
    PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "My Tag"); 
    wl.acquire(); 

Добавить разрешение манифеста файл

<uses-permission android:name="android.permission.WAKE_LOCK"/> 

Убедитесь, чтобы освободить его, когда сделано.

+2

Спасибо - отлично работает! Также необходимо добавить android.permission.WAKE_LOCK для манифестации. – jacknad

1

«полный» PowerManager.WakeLock теперь устарел и потеряет поддержку.

Для будущей совместимости, используйте следующее, чтобы заставить приложение бодрствовать:

// keep awake  
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

// allow suspend 
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 

Никаких специальных разрешений не требуется.

Вам нужно будет сделать это в хостинговой деятельности. вы можете попробовать вложить AsyncTask или использовать интерфейс обратного вызова, реализованный хостом Activity (подумайте об обратных вызовах фрагмента).

Developer Reference

Смежные вопросы