Files
UnrealEngineUWP/Engine/Source/Runtime/Android/AndroidLocalNotification/Public/AndroidLocalNotification.h
joakim trossvik c19d8d88fa Android Local Notifications changes
Allow notifications to specify a pinned ID, By doing this it will only show the latest notification sent from that ID.
Currently no IOS implementation.
#preflight 641ad9056f1ceb81be621b6c

[CL 24746687 by joakim trossvik in ue5-main branch]
2023-03-22 09:47:19 -04:00

42 lines
1.8 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
/*=============================================================================
AndroidLocalNotification.h: Unreal Android local notification interface object.
=============================================================================*/
#pragma once
#include "LocalNotification.h"
#if PLATFORM_ANDROID
#include "Android/AndroidApplication.h"
#include <android_native_app_glue.h>
#endif
#include "Modules/ModuleManager.h"
DECLARE_LOG_CATEGORY_EXTERN(LogAndroidLocalNotification, Log, All);
/**
* AndroidLocalNotification implementation of an Unreal local notification service.
*/
class FAndroidLocalNotificationService : public ILocalNotificationService
{
public:
FAndroidLocalNotificationService();
virtual void ClearAllLocalNotifications();
virtual int32 ScheduleLocalNotificationAtTime(const FDateTime& FireDateTime, bool LocalTime, const FText& Title, const FText& Body, const FText& Action, const FString& ActivationEvent);
virtual int32 ScheduleLocalNotificationAtTimeOverrideId(const FDateTime& FireDateTime, bool LocalTime, const FText& Title, const FText& Body, const FText& Action, const FString& ActivationEvent, int32 IdOverride);
virtual int32 ScheduleLocalNotificationBadgeAtTime(const FDateTime& FireDateTime, bool LocalTime, const FString& ActivationEvent);
virtual void GetLaunchNotification(bool& NotificationLaunchedApp, FString& ActivationEvent, int32& FireDate);
virtual void SetLaunchNotification(FString const& ActivationEvent, int32 FireDate);
virtual void CancelLocalNotification(const FString& ActivationEvent);
virtual void CancelLocalNotification(int NotificationId);
private:
bool AppLaunchedWithNotification;
FString LaunchNotificationActivationEvent;
int32 LaunchNotificationFireDate;
};