9

Chrome을 열 때만 Chrome에서 Facebook 웹에 대한 푸시 알림이 표시됩니다. 이 알림은 서비스 직원을 통해 전송됩니다. 브라우저가 닫혔거나 크롬을 여는 경우에만이 서비스 동기화 자 프로세스 만 시작되고 밀어 넣기 알림을 보내기 시작하더라도 백그라운드 동기화가 계속 진행되는지 궁금합니다.브라우저가 닫힌 경우에도 서비스 근로자가 백그라운드에서 실행됩니까?

+1

예. 그렇습니다. –

+0

@Jonasw에 대해 어떻게해야합니까? 비활성 상태로 이동하는 방법은 무엇입니까? –

+0

http://stackoverflow.com/questions/39034950/google-chrome-push-notifications-not-working-if-the-browser-is-closed –

답변

6

첫 번째 사항은 플랫폼에 다소 달려 있다는 것입니다. 크롬에 대한 나의 이해는 다음과 같습니다.

Windows 및 Mac OS X과 같은 데스크탑 플랫폼에서는 서비스 작업자가 실행될 수 있도록 브라우저에 백그라운드 프로세스가 실행 중이어야합니다. Mac OS X에서는 브라우저가 창을 열어 볼 수 없으므로 검색하기가 매우 쉽지만 브라우저는 여전히 아래에 빛나는 점이 있습니다.

모바일 플랫폼에서 이벤트를 수신하고 효율적인 방식으로 처리하는 것이 더 쉽습니다. 따라서 이러한 경우 플랫폼은 브라우저를 작동시켜 해당 이벤트를 처리합니다.

위의 내용은 모든 서비스 작업자 API에 적용됩니다.

바탕 화면에서

: 브라우저가 완전히 다음 서비스 노동자 실행할 수 없습니다 폐쇄 및 이벤트 (즉, 어떤 푸시 또는 배경 동기화 이벤트) 모바일에

파견하지 않을 경우 : 이벤트가 아직 발송됩니다 (즉, 사용자 기기가 온라인 상태가되고 푸시가 수신되고 푸시 이벤트가 발생할 때 백그라운드 동기화가 트리거됩니다.

+0

"크롬에 대한 나의 이해", 나는 당신이 구글에서 일하고 있다고 생각 했습니까? 그런데 SSL 인증서가 더 이상 사용되지 않습니다. –

+0

저는 Google에서 일하고 있습니다. Chrome의 작동 방식을 잘 알고있는 동안에도 진화하는 제품이며 매우 빠르게 변합니다. 내 letsencrypt 스크립트가 엉망이 된 것처럼 머리를 주셔서 감사합니다. –

+0

@ GauntFace 크롬 밑에 점이있는 경우 여전히 작동하고 있으므로 내 이해에 따라 작업자가 백그라운드 동기화를 수행 할 수 있습니다. 하지만 내 질문은 크롬이 완전히 닫힌 경우 직원에게 백그라운드 동기화를 수행 할 수 있는지 여부입니다. –

1

브라우저가 닫혀 있으면 서비스 담당자가 실행할 수 있다고 생각하지 않습니다. 서비스 작업자가 브라우저를 연 후에 만 ​​푸시 알림을 보낼 수 있기 때문입니다. 백그라운드에서 실행중인 경우 브라우저를 닫은 후에도 알림을 보낼 수 있습니다.

+0

은 w3c 문서 (https : //w3c.github.io/ServiceWorker/# user-agent-shutdown) 사용자 에이전트가 종료 될 때 서비스 작업자 상태를 저장해야한다고 명시합니다. 이것은 사용자 에이전트가 종료 된 경우 서비스 작업자가 작동하지 않는다는 것을 의미합니다. – gosua

+0

@gosua 약간 설명하고 정교한 대답을 해주시겠습니까. –

+0

사양에서이 문장보다 자세한 정보를 찾을 수 없습니다. "사용자 에이전트가 종료 될 때 상태를 저장해야합니다"라고 소리를 내게 보내면 사용자 에이전트가 정상적으로 종료되면 서비스 담당자가 더 이상 존재하지 않게됩니다. – gosua

0

Chrome은 백그라운드에서 실행할 수있는 경우에만 background script이 실행될 수있는 Chrome 확장 프로그램을 작성할 수 있습니다 (설정에서 구성 가능). use GCM 일 수도 있습니다.

+0

서비스 작업자의 기본 동작을 알고 싶습니다. 우리가 크롬을 닫으면 근로자가 일할 것인가? –

+0

크롬을 닫았지만 (백그라운드에서 실행 중이지만) 테스트 한 결과 Chrome에서 서비스 작업자가 실행 중이었습니다. 푸시를 보낼 수 있고 작업자가 성공적으로 알림을 보냈습니다. –

+0

그러나 크롬이 닫힐 때 알림을 보지 못했습니다. 크롬을 열면 다른 회사 (즉, Facebook, Google)의 모든 푸시 알림이 내 화면에서 충격을받습니다. 그래서 나는 브라우저가 닫힐 때 서비스 작업자가 실행되지 않는다고 가정했다. –

관련 문제