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

Notification에서의 Service컴포넌트 ON/OFF제어

0 추천

앱개발을 하면서 notification을 이용해 service를 on/off할 수 있게 구현해야합니다. NotificationCompat.Builder를 이용해 setContentIntent를 사용해서 Intent값을 넘겨 서비스를 실행까진 구현 시켰습니다. setContentIntent를 사용해서 서비스를 실행시키면 어떤식으로 종료 시켜야 하는지 감이 잘안잡히네요 stopself와 stopService둘다 사용해 봣는데 정상적으로 종료되지 않는 것 같습니다.

참고로 말씀드리자면 Notification도 Service컴포넌트에서 기술 했습니다.

public void onCreate(){
		super.onCreate();
		Toast.makeText(getApplicationContext(), "알림창을 활성화 했습니다.", Toast.LENGTH_SHORT).show();
		sw = false;		//mService가 실행됬음으로 sw에 false값 입력
	}

public int onStartCommand(Intent intent, int flags, int startId){
		
	Intent it = new Intent(this, mService.class);
	PendingIntent pit = PendingIntent.getService(getApplicationContext(), 0, it, 0);
	
	NotificationCompat.Builder mbuilder = new NotificationCompat.Builder(getApplicationContext())
	.setTicker("감지기")						//notification이 실행되며 화면에 잠시 노출되는 내용
	.setAutoCancel(false)						//notification이 클릭시 사라지지 않게함
	.setSmallIcon(R.drawable.ic_launcher)		//notification이 실행되며 화면에 잠시 노출되는 아이콘
	.setContentTitle("서비스 실행중~")				//notification의 제목
	.setContentText("작동중입니다.");	//notification의 내용
	
	NotificationManager notiM = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
	notiM.notify(0, mbuilder.build());
			
			
		
		return START_STICKY;
	}

 

Android B Apple (120 포인트) 님이 2015년 6월 4일 질문

1개의 답변

0 추천
저는 서비스를 죽이지 않고, 서비스에 stop이라는 함수를 두고, 서비스에서 할 일을 중단하는 걸로 했었어요
쎄미 (162,410 포인트) 님이 2015년 6월 4일 답변
...