Windows 여러 SDK 세대에서 여러 알림 API를 제공합니다. 온라인으로 알림을 보내는 방법을 검색하고 충돌하는 예제를 찾는 경우 이 페이지에서 앱에 적합한 API를 선택하는 데 도움이 됩니다.
어떤 API를 사용해야 하나요?
대답은 앱이 대상으로 하는 SDK에 따라 달라집니다.
| 앱 유형 | 권장 API | 네임스페이스 |
|---|---|---|
| WinUI 3/Windows 앱 SDK(새 앱) | AppNotificationManager |
Microsoft.Windows.AppNotifications |
| WPF, WinForms 또는 패키지되지 않은 Win32 |
AppNotificationManager NuGet을 통해 |
Microsoft.Windows.AppNotifications |
| UWP(기존 앱, 마이그레이션 계획 없음) | ToastNotificationManager |
Windows.UI.Notifications |
중요합니다
대부분의 Stack Overflow 답변과 이전 자습서는 ToastNotificationManager 네임스페이스의 Windows.UI.Notifications 사용합니다.
UWP WinRT API입니다. UWP 앱에서 작동하며 일부 데스크톱 시나리오에서 작동할 수 있지만 새 Windows 앱 SDK 앱에 권장되는 경로는 아닙니다. 새로운 개발에 AppNotificationManager를 사용하십시오.
알림 API 비교
| 특징 |
AppNotificationManager(Windows 앱 SDK) |
ToastNotificationManager (WinRT) |
|---|---|---|
| 권장 대상 | WinUI 3, WPF, WinForms, 패키지되지 않은 Win32 | 유니버설 윈도우 플랫폼 (UWP) |
| NuGet 패키지 | Microsoft.WindowsAppSDK |
없음(받은 편지함) |
| 패키지 ID 필요 | 아니요(패키지 및 패키지되지 않은 작업) | 일부 기능에 필요 |
| 푸시 통합 |
PushNotificationManager(Windows 앱 SDK) |
WNS 채널 API(Windows.Networking.PushNotifications) |
| 활성 개발 | 예 | 유지 관리만 |
알림 유형
올바른 API를 선택하면 알림이 전달되는 방법을 결정합니다.
| 유형 | 설명 | 사용 시기 |
|---|---|---|
| 로컬 앱 알림 | 실행하는 동안 앱 코드에 의해 직접 트리거됨 | 앱 내 이벤트의 사용자에게 경고하려고 합니다. |
| 예약됨 | 알림이 표시될 이후 시간 설정 | 일정 미리 알림, 경보 |
| 푸시(WNS) | Windows 푸시 알림 서비스를 통해 클라우드 서비스에서 전송됨 | 채팅 메시지, 속보, 실시간 업데이트 |
| 배지 | 앱의 작업 표시줄 아이콘에 작은 오버레이 | 읽지 않은 수, 상태 표시기 |
배달 방법에 대한 전체 분석은 알림 배달 방법 선택을 참조하세요.
다음 단계
WinUI 3 또는 Windows 앱 SDK 앱 빌드?
-
앱 알림 개요 - 로컬 및 푸시 앱 알림 사용
AppNotificationManager - 앱 알림 빠른 시작
-
푸시 알림 개요 - WNS 푸시 사용
PushNotificationManager
WPF 또는 WinForms 앱 빌드?
- 앱 알림 빠른 시작 - 로컬 알림 메시지 작업 패키지 또는 패키지 해제
- 푸시 알림 빠른 시작 - WNS 푸시는 실제로 패키지되지 않은 제한된 경로를 지원하지만 백그라운드 배달 및 COM 활성화를 위해서는 패키징(MSIX 또는 외부 위치로 패키지)이 필요합니다.
중요합니다
Windows 앱 SDK 푸시 알림에는 Azure 계정 및 Azure AD 앱 등록이 필요합니다. 앱이 패키지된 경우 PFN(패키지 패밀리 이름) 매핑 요청을 이메일로 제출해야 합니다. 시작하기 전에 최대 1주일 의 처리 시간을 허용합니다. 전체 필수 구성 요소는 푸시 알림 빠른 시작을 참조하세요.
UWP 앱 빌드 또는 유지 관리
UWP 앱을 Windows 앱 SDK로 마이그레이션하기?
Windows developer