Так что я устанавливаю повторяющийся сигнал тревоги для получения данных с сервера. Проблема в том, что ничего не происходит, когда сигнал тревоги должен уходить. У меня нет ошибок при запуске, и код правильный (насколько я знаю).Android: ничего не происходит при настройке тревоги с AlarmManager?
Вот код, который устанавливает тревогу:
private void startRequestTimer() {
// This is what will be called when the alarm goes off (GetOperations)
Intent intent = new Intent(MainActivity.this, GetOperations.class);
PendingIntent operation = PendingIntent.getBroadcast(MainActivity.this, 0, intent, 0);
// The alarm will go off in one second from now
long firstTime = SystemClock.elapsedRealtime();
firstTime += 1000;
// Set the alarm
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime, 5*1000, operation);
}
Вот GetOperations.java (это называется, когда тревога уходит)
package se.jbhalmstad.ndroid;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.widget.Toast;
public class GetOperations extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Oh! The alarm went off!", 2000).show();
}
}
И манифест, в случае, если я что-то перепутано (что я сомневаюсь, поскольку я не получаю никаких ошибок):
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="se.jbhalmstad.ndroid"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="7" />
<application android:icon="@drawable/icon" android:label="@string/APP_NAME">
<activity android:name=".MainActivity"
android:label="@string/APP_NAME">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SettingsActivity" />
<activity android:name=".GetOperations" />
</application>
</manifest>
Я что-то пропустил?
<приемник android: name = ". GetOperations" /> – 207
Спасибо, миллиард! – qwerty