Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
ashot1234
0 / 0 / 0
Регистрация: 03.02.2016
Сообщений: 4
#1

Вывести из сна - Android

13.02.2016, 14:13. Просмотров 173. Ответов 0
Метки нет (Все метки)

Нужно разбудить устройство из service, даже если находится в спячке

service
Java
1
2
3
4
5
6
7
8
9
10
 public void onCreate() {
        super.onCreate();
        alarm = new AlarmManagerBroadcastReceiver();
    }
 
...
 
Context context = this.getApplicationContext();
           
                alarm.setOnetimeTimer(context);
AlarmManagerBroadcastReceiver
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
public class AlarmManagerBroadcastReceiver extends BroadcastReceiver {
 
    final public static String ONE_TIME = "onetime";
    @Override
    public void onReceive(Context context, Intent intent) {
        PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
        PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "YOUR TAG");
        //Acquire the lock
        wl.acquire();
 
        //You can do the processing here update the widget/remote views.
        Bundle extras = intent.getExtras();
        StringBuilder msgStr = new StringBuilder();
 
        if(extras != null && extras.getBoolean(ONE_TIME, Boolean.FALSE)){
            msgStr.append("One time Timer : ");
        }
        Format formatter = new SimpleDateFormat("HH:mm:ss");
        msgStr.append(formatter.format(new Date()));
 
        //Toast.makeText(context, msgStr, Toast.LENGTH_LONG).show();
 
        //Release the lock
        wl.release();
 
    }
 
    public void setOnetimeTimer(Context context){
        AlarmManager am=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
        Intent intent = new Intent(context, AlarmManagerBroadcastReceiver.class);
        intent.putExtra(ONE_TIME, Boolean.TRUE);
        PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent, 0);
        am.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), pi);
        Toast.makeText(context, "Выполняет", Toast.LENGTH_SHORT).show();
    }
}
манифест
XML
1
2
<uses-permission android:name="android.permission.WAKE_LOCK" />
<receiver android:name=".AlarmManagerBroadcastReceiver"></receiver>
Почему не работает?
взято тут https://github.com/SergeyAndSmart/Co...ManagerExample
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2016, 14:13     Вывести из сна
Посмотрите здесь:

Android Приложение без сна

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 20:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru