마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

AlarmManager에서 ..

0 추천

알람을 등록해 주기적인 알람을 실행하려고하는데

자꾸 알람이 등록하자마자 실행합니다.

시작시간도 현재시간+3시간으로 해놧는데 코드상에 문제가 있나요 ?

	public static void registerAlarm(Context context) {

		int mCrouteCode = 1;
		Intent intent = new Intent(context, PushServiceReceiver.class);
		// intent.setAction(PushServiceReceiver.INNER_PUSH);
		PendingIntent sender = PendingIntent.getBroadcast(context, mCrouteCode,
				intent, 0);

		AlarmManager manager = (AlarmManager) context
				.getSystemService(Context.ALARM_SERVICE);
	
		long triggerTime = SystemClock.currentThreadTimeMillis() + 1000 * 60*60*3;
		// 60*60*3; //10초
		manager.setRepeating(AlarmManager.RTC, mCrouteCode, triggerTime, sender);
		Log.d("DEBUG", "RegistAlarm");
//		Log.d("DEBUG","SystemClock.currentThreadTimeMillis() : "+ triggerTime);
//		Log.d("DEBUG","SystemClock.elapsedRealtime() : "+ SystemClock.elapsedRealtime());
	}

 

kkong_93 (680 포인트) 님이 2015년 4월 16일 질문

1개의 답변

0 추천
 
채택된 답변

네 잘못됐습니다. API 문서상으로는 타입, 트리거 타임, 인터벌 타임, 오퍼레이션인데

작성자님은 지금 트리거 타임을 1로 주고 인터벌을 3시간 간격으로 했네요

public void setRepeating (int type, long triggerAtMillis, long intervalMillis, PendingIntent operation)

Gradler (109,780 포인트) 님이 2015년 4월 16일 답변
kkong_93님이 2015년 4월 16일 채택됨
manager.setRepeating(AlarmManager.RTC, triggerTime, 1000*30, sender);
이렇게 변경해줬는데도 실행하자마자 알람이 울립니다 ㅠㅠ
...