다음을 통해 공유


푸시 알림 기능 마이그레이션Push notifications function migration

이 항목에는 푸시 알림 메시지 기능 영역의 마이그레이션 지침이 포함되어 있습니다.

Important

현재 원시 푸시 알림과 앱 푸시 알림만 지원됩니다. 배지 푸시 알림 및 타일 푸시 알림은 지원되지 않습니다.

API 및/또는 기능 차이점 요약

푸시 알림은 이러한 4개의 개별 단계로 나눌 수 있습니다.

단계 UWP Windows 앱 SDK
ID 파트너 센터(MSA) Azure 앱 등록(AAD)
채널 요청 비동기 비동기
Azure 앱 등록 ID
기본 제공 재시도 논리(최대 5회 재시도)
활성화 In-process, PushTrigger*, COM 활성화* In-process, COM 활성화, ShellExecute
푸시 알림 보내기 login.live.com 엔드포인트를 사용하여 액세스 토큰 받기 토큰 요청에 https://login.microsoftonline.com/{tenantID}/oauth2/token 엔드포인트 사용

* Windows 10, 버전 2004(10.0, 빌드 19041) 이상에서 지원됩니다.

ID 설정

Windows 앱 SDK에서 푸시 알림 기능은 AAD(Azure 앱 등록)의 ID를 사용하므로 푸시 알림을 사용하기 위해 파트너 센터의 PFN(패키지 패밀리 이름)가 필요한 것은 아닙니다.

채널 요청

채널 요청은 비동기적으로 처리되며 Azure 앱ID GUID 및 Azure tenantID(AAD 앱 등록에서 Azure 앱ID 및 테넌트 ID 수신)가 필요합니다. UWP 앱에서 사용하는 PFN(패키지 패밀리 이름) 대신 ID에 Azure AppID를 사용합니다. 요청 시 다시 시도 가능한 오류가 발생할 경우 알림 플랫폼은 여러 번 재시도합니다.

Windows 앱 SDK 앱은 채널 요청의 상태를 확인할 수 있습니다.

활성화

푸시 알림을 받도록 앱 구성에서 Windows 앱 SDK 등록 및 활성화 단계를 참조하세요.

푸시 알림 보내기

Windows 앱 SDK 앱은 MSA 엔드포인트가 아닌 AAD 엔드포인트에서 액세스 토큰을 요청해야 합니다.

액세스 토큰 요청

UWP 앱의 경우:

POST /accesstoken.srf HTTP/1.1
Host: login.live.com
Content-Type: application/x-www-form-urlencoded
Cookie: MSCC=73.140.231.96-US
Content-Length: 112

grant_type=client_credentials&client_id=<AppID_Here>&client_secret=<Client_Secret_Here>&scope=notify.windows.com

Windows 앱 SDK 앱(AAD 액세스 토큰 요청)의 경우:

POST /{tenantID}/oauth2/v2.0/token Http/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 160

grant_type=client_credentials&client_id=<Azure_App_Registration_AppId_Here>&client_secret=<Azure_App_Registration_Secret_Here>&resource=https://wns.windows.com/

WNS에 HTTP 게시

WNS에 HTTP POST 요청을 보내는 경우 UWP에서 변경된 내용이 없습니다. 액세스 토큰은 여전히 인증 헤더에 전달됩니다.

POST /?token=[ChannelURI] HTTP/1.1
Host: dm3p.notify.windows.com
Content-Type: application/octet-stream
X-WNS-Type: wns/raw
Authorization: Bearer [your access token]
Content-Length: 46

{ Sync: "Hello from the Contoso App Service" }

참고 항목