2012-10-18 5 views
1

Android에 iOS 앱을 추가하기 시작했습니다. 하지만 다음과 같은 문제가 있습니다.주어진 시간에 Android 알림이 팝업되지 않습니다.

경고가 팝업되도록 여러 클래스를 만들었습니다. 그러나 문제는 주어진 시간 대신 알림이 5/10 초마다 팝업된다는 것입니다. 나는이 다음 코드를 함께 할 수있는 뭔가가 알고

alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, SystemClock.elapsedRealtime() + 5000, 10000, pendingIntent); 

그러나이 이상한 것은 그 코드 위의 주어진 시간에 어떤 일이 실행되지 않는다는 것입니다 : 는 (그렇지 않으면 난 그냥 마지막을 삭제 한 수를 알람이 팝업하지 않기 때문에 17시 18분에 있지만, 각 시간을 5 ~ 10 초 후에 그 코드를 잘못 어떤 코드의 라인)

private void setRecurringAlarm(Context context) { 
    Calendar updateTime = Calendar.getInstance(); 
    updateTime.set(Calendar.HOUR_OF_DAY, 17); 
    updateTime.set(Calendar.MINUTE, 18); 

    Intent open = new Intent(this, AlarmReceiver.class); 
    open.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, open, PendingIntent.FLAG_CANCEL_CURRENT); 
    AlarmManager alarmManager = (AlarmManager) getSystemService(MyApp.ALARM_SERVICE); 
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, SystemClock.elapsedRealtime() + 5000, 10000, pendingIntent); 

. 알림을 표시하기 위해 만든 서비스가 17:18에 시작되지 않아 메시지가 표시되지 않습니다. 이것은 내 시간대 (암스테르담 시간)와 관련이 있습니까?

답변

0

.setRepeating에 대한 잘못된 값을 전달한 것 같습니다. 당신이 말하는 것처럼 나에게 보이는 the documentation

살펴 유무 : 오초 지금부터 처음으로 방송을, 그 반복 후 매 10 초

+0

예 그게 무엇의 지금은 그냥 원하는 위에 주어진 특정 시간에 가야하지만 작동하지 않습니다 - 나는 첫 번째 게시물을 업데이트했습니다. – user1756912

+0

입니다. updateTime을 설정 했으므로 실제로는 아무 것도하지 않기 때문입니다. .setRepeating에 전달하는 두 번째 매개 변수는 의도가 처음 브로드 캐스트 될 때까지의 기간이어야합니다. 두 번째 매개 변수로 updateTime.getTimeInMillis()를 사용하려고한다고 생각합니다. 현재 사용중인 장치는 (마지막으로 다시 시작한 이후) + 5 초 동안 장치가 실행 된 시간입니다. – raydowe

+0

팁 주셔서 감사합니다, 다음 코드는 나를 위해 일했습니다! alarmManager.set (AlarmManager.RTC_WAKEUP, updateTime.getTimeInMillis(), pendingIntent); – user1756912

관련 문제