안드로이드 개발 질문/답변
(글 수 45,052)
service에서 다음과 같이 notification에서 activity를 부릅니다.
public void setNotify() {
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification notification = new Notification(R.drawable.icon, "start message", System.currentTimeMillis());
notification.flags = Notification.FLAG_ONGOING_EVENT;
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, new Intent(this, HelloServiceActivity.class), 0);
notification.setLatestEventInfo(this, "title", "text", pendingIntent);
mNotificationManager.notify(_id, notification);
}
그런데 문제는,
activity가 열려 있는지 여부를 확인하지 않고 무조건 activity를 열더라구요
activity가 열려있는지 확인하고 열려면 어떻게 해야 하나요 ?
도와주세요.
notification 바에서 탭했을때, 그 activity가 이미 열려있는 경우를 체크하고 싶으신 건가요? 일반적으론 그렇게 할 경우 동일한 activity가 2개 뜨게 되죠...
메니페스트에 android:launchMode="singleTask" 를 추가하시면.. 이미 activity가 떠있는 경우 새로 activity를 생성하지 않고 그 activity를 올려줍니다. 즉 재사용한다는거죠...
원하시는게 맞는지 모르겠네요..