2013-09-04 8 views
0

나는 여러 번 알람 작업을 해왔지만, 내 생애 동안이 일을 유발할 수는 없다 ... 내가 뭘 잘못하고 있니? 나는 서비스, BroadcastReceivers, 모든 것을 방아쇠 시도했다. 내가 이전 시간과 미래 (5 초 후)에서 그것을 실행하려고했습니다. 내가 아는 한 오류가 발생하지 않고 내 로그가 실행 중입니다 ...하지만 AlarmReceiver의 아무 것도 트리거되지 않습니다. 당신이이 분의 처음 5 초 단위로 실행하면알람이 발생하지 않음

public void setAlarm() { 
      Calendar exp = Calendar.getInstance(); 
      exp.set(Calendar.SECOND, 5); 

      AlarmManager am = (AlarmManager)mContext.getSystemService(Context.ALARM_SERVICE); 
      am.set(AlarmManager.RTC_WAKEUP, exp.getTimeInMillis(), PendingIntent.getService(mContext, 0, new Intent(mContext, AlarmReceiver.class), 0)); 
      Log.i("", "Alarm set for " + DateFormat.format("MMMM dd, yyyy hh:mma", exp.getTime())); 

     } 

    } 

public class AlarmReceiver extends Service { 

    @Override 
    public IBinder onBind(Intent intent) { 
     Log.d("", "onBind Tiggered"); 
     return null; 
    } 

    public void onCreate() { 
     Log.d("", "onCreate Triggered"); 
    } 
} 

답변

2

매니페스트에 서비스를 추가하는 것을 잊지 마세요!

0

시간은 단지 미래에있을 것입니다.

시간을 추가하려면 calendar.add(field, value);을 사용해야합니다.

GMT를 제외한 시간대에있는 경우 캘린더가 꺼질 수도 있습니다.

가장 쉬운 방법은 다음과 같이 그것을 할 5 초 동안 알람을 설정하려면 :

alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + (5 * 1000), pendingIntent); 
+0

좋아, 사실 ..하지만 System.currentTimeMillis() + (5 * 1000)를 사용하여 성공하지 못했습니다. – bwoogie

+0

로그에 흥미로운 점이 있습니까? 관련 섹션을 게시 할 수 있습니까? – alex

+0

아니요 .. 아무 것도 로그에서 일어나지 않습니다. 내가 알람을 만들 때 게시 한 내용이 아닌 것 – bwoogie

관련 문제