안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요 하루하루 삽질하면서 안드로이드를 공부하고 있습니다..^^
버튼 클릭시 알람매니저를 이용해
Intent intent = new Intent(MyAlarm.this, AlarmWakeUp.class);
intent.putExtra("alarm_wake_type", "basic");
PendingIntent sender = PendingIntent.getBroadcast(MyAlarm.this,0, intent, 0);
long firstTime = SystemClock.elapsedRealtime();
firstTime += 10*1000; //10초후 실행
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime, sender);
이처럼 등록시 intent에 데이터를 넣어서 알람매니저를 설정하고
BroadcastReceiver를 상속받은 클래스의 onReceive(Context context, Intent intent) 에서
intent.getStringExtra("alarm_wake_type"); 을 하니 다른 값을 가져오네요...
제일 처음 등록했던 값이 계속 나오는데 값을 put한 부분 소스를 변경해도 계속 처음 값이 나오는걸보니
펜딩인텐트가 값을 hold하고 있는거 같기도 하고.... 뭐 잘 모르겠네요...
왜그런지 좀 알려주세요....ㅜㅜ
버튼 클릭시 알람매니저를 이용해
Intent intent = new Intent(MyAlarm.this, AlarmWakeUp.class);
intent.putExtra("alarm_wake_type", "basic");
PendingIntent sender = PendingIntent.getBroadcast(MyAlarm.this,0, intent, 0);
long firstTime = SystemClock.elapsedRealtime();
firstTime += 10*1000; //10초후 실행
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
am.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime, sender);
이처럼 등록시 intent에 데이터를 넣어서 알람매니저를 설정하고
BroadcastReceiver를 상속받은 클래스의 onReceive(Context context, Intent intent) 에서
intent.getStringExtra("alarm_wake_type"); 을 하니 다른 값을 가져오네요...
제일 처음 등록했던 값이 계속 나오는데 값을 put한 부분 소스를 변경해도 계속 처음 값이 나오는걸보니
펜딩인텐트가 값을 hold하고 있는거 같기도 하고.... 뭐 잘 모르겠네요...
왜그런지 좀 알려주세요....ㅜㅜ
FLAG_UPDATE_CURRENT