Я хочу написать какое-то фоновое-живое приложение для спортивных веб-сервисов ... Я бы хотел, чтобы мое приложение постоянно вызывало TIME_TICK.BroadcastReceiver (TIME_TICK) умирает каждую ночь?
Btw: Я также пытался использовать AlarmManager, но проблема такая же.
Но теперь моя проблема ...
Я использую приемник с службой для выполнения части. Приемник вызывается каждую минуту после регистрации. Но каждую ночь служба прекращается и больше никогда не будет вызвана.
На Android 2.x все работает нормально, но Android 4.x будет останавливать приемник каждый день ... Есть ли возможность сохранить приложение на Android 4.x?
Reveiver зарегистрирован в моем Main-активность:
registerReceiver(new MyReceiver(), new IntentFilter(Intent.ACTION_TIME_TICK));
Manifest-записей:
<service android:name="de.pepdev.MyService" />
<receiver android:name="de.pepdev.MyReceiver">
<intent-filter>
<action android:name="android.intent.action.TIME_TICK" />
</intent-filter>
</receiver>
Приемник-класс:
public class MyReceiver extends BroadcastReceiver
{
public static long nextExecTime = 0;
public static Calendar currentTime = Calendar.getInstance();
@Override
public void onReceive(Context context, Intent intent)
{
currentTime = Calendar.getInstance();
if(nextExecTime <= currentTime.getTimeInMillis())
{
Intent service = new Intent(context, MyService.class);
context.startService(service);
}
}
}
Можете ли вы разместить журналы здесь? Вы знаете, почему услуга прекращается? –
спасибо за помощь, но журналы ничего не говорят. услуга вызывается на пару раз, а ночью logcat не имеет никаких дополнительных записей в моем приложении. последний цикл завершился успешно. также системные сообщения, такие как alarmmanage, не бросали ничего. – user2854483