Другой жалуется на AlarmManager (надеясь на быстрое решение). Я использую Android Эмулятор для разработки. Я нашел предположительно рабочий пример, поэтому я попытался его использовать. я сделал следующее:Android AlarmManager не работает на эмуляторе
Добавлен приемник строку в файл манифеста.
<receiver android:name=".SchHandler" android:process=":remote" />
Создал основную деятельность и использовал ее onCreate.
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Bundle bundle = new Bundle(); SchHandler handler = new SchHandler(this, bundle, 1); }
Создано BroadcastReceiver создавать и прослушивать сигналы тревоги.
public class SchHandler extends BroadcastReceiver { private final String REMINDER_BUNDLE = "ReminderBundle"; public SchHandler (Context context, Bundle extras, int timeoutInSeconds) { Toast.makeText(context, "Scheduling...", Toast.LENGTH_LONG).show(); Log.d("Debug", "Sch"); AlarmManager alarmMgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); Intent intent = new Intent(context, SchHandler.class); PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0); Toast.makeText(context, "Time:" + System.currentTimeMillis(), Toast.LENGTH_LONG).show(); alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 2000, 5000, pendingIntent); } @Override public void onReceive(Context context, Intent arg1) { // TODO Auto-generated method stub Log.e(REMINDER_BUNDLE, "Receive"); Toast.makeText(context, "Testing", Toast.LENGTH_LONG).show(); } }
Я пробовал с установить, setRepeating, ничего не получалось. Что еще я должен попробовать?
Это странно. Я не вижу никаких проблем с вашим кодом. Может ли быть выполнено 'onReceive()', но тост не показан? –
Если выполняется, журнал должен показать его (_Log.d_). Но ничего не происходит. – Nestor
Тогда ваш 'BroadcastReceiver' не зарегистрирован должным образом. Попробуйте добавить '' с некоторыми действиями к вашему '' в 'AndroidManifest.xml' и установить это действие в' Intent'. –