programing

웹 애플리케이션이 iOS 기기에 푸시 알림을 보내는 방법은 무엇입니까?

lastcode 2023. 6. 1. 22:46
반응형

웹 애플리케이션이 iOS 기기에 푸시 알림을 보내는 방법은 무엇입니까?

저는 웹 앱을 만들고 있습니다.새로운 콘텐츠가 있을 때 iOS 사용자에게 푸시 알림을 보내려면 어떻게 해야 합니까?

좀 더 구체적으로 말하면, 웹 응용 프로그램이 iPhone과 같은 모바일 장치로 푸시 알림을 보내려면 모바일 장치가 등록되어 있어야 특정 응용 프로그램에 대한 푸시 알림을 받을 수 있습니다.푸시 알림 등록은 네이티브 앱을 통해서만 가능하며 네이티브 앱을 통해서만 가능합니다.네이티브 앱이 푸시 알림에 등록되면 서버에 인증 토큰을 보낼 수 있으며, 이 토큰은 네이티브 클라이언트를 프로비저닝하는 데 사용되는 인증서와 함께 사용되어 푸시 알림을 모바일 장치로 전송할 수 있습니다.

다른 답변에 명시된 것처럼, 한 가지 옵션은 웹 응용프로그램을 기본 응용프로그램으로 '랩'하는 것입니다.기본적으로 웹 애플리케이션을 표시하는 사용자에게 UI WebView(iPhone dev용)를 제공하는 네이티브 애플리케이션을 만듭니다.이 기능은 기본 브라우저와 거의 동일한 방식으로 작동하지만 기본 컨트롤을 사용하여 푸시 알림을 등록하는 기능을 추가할 수 있습니다.

Apple의 푸시 알림 문서를 검토하면 iPhone에서 푸시 메시지가 어떻게 작동하는지에 대한 꽤 좋은 정보를 제공하므로 유용할 것입니다.

Peter Hosey가 제공한 다음 링크를 참조하십시오.

iOS(iOS 10 기준)에서는 아직 지원되지 않지만, 웹 사이트는 푸시 API를 사용하여 Firefox 및 Chrome(데스크탑/Android)에 푸시 알림을 보낼 수 있습니다.

푸시 API는 이전알림과 함께 메시지를 표시하는 데 사용됩니다.Push API는 서비스 작업자(브라우저에 의해 등록되고 사용자가 웹 사이트를 떠난 후에도 나중에 백그라운드에서 실행될 수 있는 스크립트)를 기반으로 하기 때문에 사용자가 웹 사이트를 서핑하지 않을 때에도 알림을 전달할 수 있다는 장점이 있습니다.

통지를 보내는 프로세스에는 다음이 포함됩니다.

  1. 사용자가 웹 사이트를 방문합니다(HTTPS를 통해 보안 유지). 푸시 알림을 표시할 수 있는 권한을 요청하고 서비스 작업자를 등록합니다(푸시 알림을 받을 때 실행되는 스크립트).
  2. 사용자가 권한을 부여한 경우, 서버로 전송되고 저장되어야 하는 장치 토큰(스캐너)을 읽을 수 있습니다.
  3. 이제 사용자에게 알림을 보낼 수 있습니다. 서버는 엔드포인트(장치 토큰이 포함된 URL)에 HTTP POST 요청을 합니다.요청을 수신한 서버는 브라우저 제조업체(예: Google, Mozilla)가 소유합니다. 브라우저는 계속 연결되어 수신 알림을 읽을 수 있습니다.
  4. 사용자 브라우저가 알림을 수신하면 이벤트 관리, 서버에서 알림 데이터 검색 및 사용자에게 알림 표시를 담당하는 서비스 작업자가 실행됩니다.

푸시 API는 현재 데스크톱과 Android에서 Chrome, Firefox 및 Opera에서 지원됩니다.

APN을 사용하여 Apple/Safari 데스크톱에 푸시 알림을 보낼 수도 있습니다.접근 방식은 비슷하지만 많은 복잡성(애플 개발자 인증서, 푸시 패키지, APN에 대한 낮은 수준의 TCP 연결)이 있습니다.

푸시 알림을 직접 구현하려면 다음 자습서를 사용하십시오.

해결책을 찾고 있다면 제가 만든 서비스인 푸시패드를 추천합니다.

업데이트(2017년 9월):Apple은 WebKit(상태) 서비스 인력 개발을 시작했습니다.서비스 종사자들은 웹 푸시의 기본 기술이기 때문에, 이것은 큰 진전입니다.

아니요, 기본 iOS 애플리케이션만 푸시 알림을 지원합니다.


이제 Mac OS X 10.9 및 Safari 7 웹 사이트에서도 푸시 알림을 보낼 수 있지만 iOS에는 적용되지 않습니다.웹 사이트에 대한 알림 프로그래밍 안내서를 읽습니다.WWDC 2013 Session 614도 확인하십시오.

독자적인 네이티브 앱을 만들고 싶지 않다면 푸시버를 사용할 수 있습니다. https://pushover.net/

Google Chrome은 이제 푸시 알림을 위한 W3C 표준을 지원합니다.

http://www.w3.org/TR/push-api/

사실..이것은 완전히 새로운 마인드 당신입니다.최신 버전의 OS X(Mavericks)에서는 웹 페이지에서 바탕 화면으로 푸시 알림을 보낼 수 있습니다.그러나 설명서에 따르면 아이폰이 아닙니다.

Note: This document pertains to OS X only. Notifications for websites do not appear on iOS.

현재 애플은 OS X 웹사이트 푸시 알림과 로컬 알림의 두 가지 푸시 알림을 허용할 계획입니다.

여기서 분명한 장애물은 이것이 PC에서 작동하지 않을 것이며 안드로이드 푸시 알림을 수행할 수도 없다는 것입니다.

또한, 실제로 Snow Leapord와 같은 오래된 버전을 사용하여 해당 웹 사이트가 열려 있고 활성화되어 있는 한 웹 사이트에서 푸시 알림을 보낼 수 있습니다.새로운 Mavericks OS는 사용자가 해당 사이트에 푸시 알림을 보낼 수 있는 권한을 이미 부여했다고 가정하여 사이트가 열리지 않더라도 푸시 알림을 허용합니다.

애플의 입에서:

OS X v10.9 이상에서는 Apple Push Notification 서비스(APN)를 사용하여 OS X 웹 사이트 푸시 알림을 웹 서버에서 OS X 사용자에게 직접 발송할 수 있습니다.로컬 알림과 혼동하지 않도록 푸시 알림은 웹 사이트 또는 웹 브라우저가 열려 있는지 여부에 관계없이 사용자에게 전달될 수 있습니다.

웹 사이트에 푸시 알림을 통합하려면 먼저 사용자가 알림을 수신하도록 선택할 수 있는 인터페이스를 제공합니다.사용자가 동의하면 Safari는 푸시 패키지라는 파일 형식으로 자격 증명을 요청하는 웹 사이트에 연락합니다.푸시 패키지에는 OS X 전체에서 사용되는 알림 자산과 구성하는 웹 서비스와 통신하는 데 사용되는 데이터도 포함됩니다.푸시 패키지가 유효한 경우 장치 토큰이라고 하는 장치에서 사용자에 대한 고유 식별자를 수신합니다.이 장치 토큰과 메시지 또는 페이로드의 조합을 APN으로 보낼 때 사용자는 알림을 받습니다.

알림을 받으면 알림을 클릭하여 사용자의 기본 브라우저에서 선택한 웹 페이지를 열 수 있습니다.

참고: APN에서 새로 고침이 필요한 경우 로컬 및 푸시 알림 프로그래밍 가이드의 "Apple Push Notification Service" 장을 참조하십시오.이 문서는 iOS 및 OS X 푸시 알림에 특화되어 있지만 푸시 알림 서비스의 패러다임은 여전히 적용됩니다.

아니요, 웹 앱에서 푸시 알림을 받을 수 있는 방법은 없습니다.당신이 할 수 있는 것은 당신의 웹 앱을 푸시 알림이 있는 네이티브 앱으로 포장하는 것입니다.

W3C는 2010년에 통지를 구현하기 위한 작업 그룹을 시작했습니다.
http://www.w3.org/2010//http://www.w3.org/2010/web-notifications/

이 작업 그룹은 웹 기반 전자 메일 클라이언트 및 인스턴트 메시징 클라이언트와 같은 웹 개발자가 웹 애플리케이션 동작을 최종 사용자의 운영 체제 알림 기능과 더욱 긴밀하게 통합할 수 있도록 이러한 메커니즘을 웹 애플리케이션에 노출하는 API를 개발합니다.

마지막으로 결과는 특정 웹사이트가 열려 있을 때만 작동하기 때문에 나쁜 농담과 같습니다. http://alxgbsn.co.uk/notify.js/

나는 그들이 푸시 URL을 추가할 수 있는 가능성을 구현하지 못했기 때문에 브라우저가 백그라운드에서 실행되는 동안, 그리고 무엇보다도 모든 탭이 닫혔을 경우 알림을 요청할 수 있다고 생각합니다.

HTML5 웹 소켓을 사용하여 자신만의 푸시 메시지를 소개할 수 있습니다.Wikipedia에서:

"클라이언트 쪽에서는 웹소켓이 파이어폭스 4, 구글 크롬 4, 오페라 11, 사파리 5에서 구현될 예정이었고 iOS 4.2에서는 모바일 버전의 사파리도 구현될 예정이었습니다.또한 OS7의 BlackBerry Browser는 WebSockets를 지원합니다."

이렇게 하려면 메시지를 클라이언트에 푸시할 자체 공급자 서버가 필요합니다.
APN(Apple Push Notification) 또는 C2DM(Cloud to Device Message)을 사용하려면 온라인 상점을 통해 다운로드해야 하는 기본 응용 프로그램이 있어야 합니다.

푸시 글렛은 이에 대한 훌륭한 대안입니다.

그러나 사용자는 Pushbullet 계정과 앱(iOS, Android) 또는 플러그인(Chrome, Opera, Firefox 및 Windows)이 설치되어 있어야 합니다.

Pushbullet 앱을 생성하여 API를 사용할 수 있으며, oAuth2를 사용하여 앱의 사용자를 Pushbullet 사용자에 연결할 수 있습니다.

라이브러리를 사용하면 훨씬 쉬워질 것입니다. PHP의 경우 ivkos/Pushbullet-for-PHP를 추천할 수 있습니다.

Xtify 웹 푸시 알림을 확인합니다.http://getreactor.xtify.com/ 이 도구를 사용하면 웹 페이지에 콘텐츠를 푸시하여 방문자를 대상으로 할 수 있을 뿐만 아니라 브라우저 DOM 이벤트를 기반으로 메시지를 트리거할 수 있습니다.모바일을 염두에 두고 특별히 설계되었습니다.

언급URL : https://stackoverflow.com/questions/4939698/how-can-a-web-application-send-push-notifications-to-ios-devices

반응형