2017-04-20 4 views
2

따라서 Nougat에서는 동일한 앱의 여러 알림이 자동으로 그룹에 묶입니다. 내 알림에 일부 추가 기능이있는 PendingIntent를 설정하고 특정 알림을 탭하면 특정 활동 (딥 링크)을 시작합니다.번들 된 알림을 탭하지 않으면 PendingIntent가 트리거되지 않습니다.

알림 번들을 탭하면 (즉, 그룹을 확장하지 않고) 내 앱이 런처에서 보낸 것처럼 간단히 실행됩니다. 즉, 인 텐트가 비어 있거나 엑스트라가 없습니다 (즉, 제공된 PendingIntent).

사용자가 알림 번들을 누를 때 사용할 의도를 어떻게 지정할 수 있습니까?

답변

2

동일한 문제가 발생하여 조사를 한 후에 Android가 자동으로 알림을 그룹화하기로 결정할 때 PendingIntent를 사용하도록 설정할 수없는 것으로 보입니다.

구현은 AOSP 소스의 NotificationManagerService.maybeAddAutobundleSummary()에 있습니다. 이 상황에서 시스템은 런처 활동을 시작하기 위해 항상 PendingIntent를 생성합니다.

당신은 여기에 설명 된대로 그룹 및 요약 통지 스스로 관리 할 수있는 무엇 : http://blog.danlew.net/2017/02/07/correctly-handling-bundled-android-notifications/

또 다른 옵션은 응용 프로그램이 실행될 때) (NotificationManager.getActiveNotifications를 사용하여 활성 알림을 반복하는 다음 결정하는 것이 무엇 (예 : 발견 된 경우 보류중인 딥 링크를 처리).

관련 문제