안드로이드 개발 질문/답변
(글 수 45,052)
우선 소스입니다.
Intent i = new Intent(Activity.this, Service.class);
sender = PendingIntent.getBroadcast(Activity.this, 0, i, 0);
long firstTime = SystemClock.elapsedRealtime();
AlarmManager am = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime, 2 * 1000, sender);
Activity 에서 알람서비스를 BroadCastReceiver 를 통해 구현하였습니다.
Service 클래스는 BroadCastReceiver 를 상속받았구요.
궁금한점은 Activity 에서 Button 클릭시 BroadCastReceiver 의 수신을 중단하고 싶습니다.
그래서 Button 의 onClickListener() 안에 am.cancle(sender) 를 넣었더니, 클릭하였을적에만 발생을 하여야 하는데
액티비티 실행시 알람서비스가 아예 cancle 이 되어버리네요 ㅜㅜㅜㅜ
매니페스트에는 <receiver android:name="Service" android:process=":remote" /> 로 선언을 하였구요.
답변부탁드립니다.