From 29856e10d1e510d5ce056406346fedd69c8fa4a1 Mon Sep 17 00:00:00 2001 From: Thomas Mijieux Date: Sun, 16 Jun 2024 21:57:39 +0200 Subject: [PATCH] user notification extension service in dotnet --- ...SignalSDK.DotNet.Android.Core.Binding.csproj | 3 ++- .../Additions/NotificationExtenderBase.cs | 9 +++++++++ .../NotificationServiceExtenderBase.cs | 10 ++++++++++ ....DotNet.Android.Notifications.Binding.csproj | 6 +++++- .../Transforms/Metadata.xml | 4 +++- .../OneSignalSDK.DotNet.Android.csproj | 10 +++++++--- .../Utilities/NotificationExtensionAttribute.cs | 17 +++++++++++++++++ OneSignalSDK.DotNet.nuspec | 2 +- OneSignalSDK.DotNet/OneSignalSDK.DotNet.csproj | 3 ++- 9 files changed, 56 insertions(+), 8 deletions(-) create mode 100644 OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationExtenderBase.cs create mode 100644 OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationServiceExtenderBase.cs create mode 100644 OneSignalSDK.DotNet.Android/Utilities/NotificationExtensionAttribute.cs diff --git a/OneSignalSDK.DotNet.Android.Core.Binding/OneSignalSDK.DotNet.Android.Core.Binding.csproj b/OneSignalSDK.DotNet.Android.Core.Binding/OneSignalSDK.DotNet.Android.Core.Binding.csproj index 3956828..4a8ac8e 100644 --- a/OneSignalSDK.DotNet.Android.Core.Binding/OneSignalSDK.DotNet.Android.Core.Binding.csproj +++ b/OneSignalSDK.DotNet.Android.Core.Binding/OneSignalSDK.DotNet.Android.Core.Binding.csproj @@ -55,6 +55,7 @@ + - \ No newline at end of file + diff --git a/OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationExtenderBase.cs b/OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationExtenderBase.cs new file mode 100644 index 0000000..474999a --- /dev/null +++ b/OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationExtenderBase.cs @@ -0,0 +1,9 @@ +using AndroidX.Core.App; + +namespace Com.OneSignal.Notifications.Android +{ + public abstract class NotificationExtenderBase : Java.Lang.Object, NotificationCompat.IExtender + { + public abstract NotificationCompat.Builder Extend(NotificationCompat.Builder builder); + } +} diff --git a/OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationServiceExtenderBase.cs b/OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationServiceExtenderBase.cs new file mode 100644 index 0000000..148eccc --- /dev/null +++ b/OneSignalSDK.DotNet.Android.Notifications.Binding/Additions/NotificationServiceExtenderBase.cs @@ -0,0 +1,10 @@ +using Android.Content; + +namespace Com.OneSignal.Android.Notifications +{ + public abstract class NotificationServiceExtenderBase: Java.Lang.Object, Com.OneSignal.Android.Notifications.INotificationServiceExtension + { + public abstract void OnNotificationReceived(Com.OneSignal.Android.Notifications.INotificationReceivedEvent ev); + } +} + diff --git a/OneSignalSDK.DotNet.Android.Notifications.Binding/OneSignalSDK.DotNet.Android.Notifications.Binding.csproj b/OneSignalSDK.DotNet.Android.Notifications.Binding/OneSignalSDK.DotNet.Android.Notifications.Binding.csproj index eea8ad5..3a29116 100644 --- a/OneSignalSDK.DotNet.Android.Notifications.Binding/OneSignalSDK.DotNet.Android.Notifications.Binding.csproj +++ b/OneSignalSDK.DotNet.Android.Notifications.Binding/OneSignalSDK.DotNet.Android.Notifications.Binding.csproj @@ -55,6 +55,10 @@ + + + + - \ No newline at end of file + diff --git a/OneSignalSDK.DotNet.Android.Notifications.Binding/Transforms/Metadata.xml b/OneSignalSDK.DotNet.Android.Notifications.Binding/Transforms/Metadata.xml index 5676935..74d6a5b 100644 --- a/OneSignalSDK.DotNet.Android.Notifications.Binding/Transforms/Metadata.xml +++ b/OneSignalSDK.DotNet.Android.Notifications.Binding/Transforms/Metadata.xml @@ -1,3 +1,5 @@  - Com.OneSignal.Android.Notifications + Com.OneSignal.Android.Notifications + + java.util.List<com.onesignal.notifications.INotification> diff --git a/OneSignalSDK.DotNet.Android/OneSignalSDK.DotNet.Android.csproj b/OneSignalSDK.DotNet.Android/OneSignalSDK.DotNet.Android.csproj index b246e89..fc7c76a 100644 --- a/OneSignalSDK.DotNet.Android/OneSignalSDK.DotNet.Android.csproj +++ b/OneSignalSDK.DotNet.Android/OneSignalSDK.DotNet.Android.csproj @@ -54,8 +54,8 @@ - - + + @@ -66,5 +66,9 @@ + + + + - \ No newline at end of file + diff --git a/OneSignalSDK.DotNet.Android/Utilities/NotificationExtensionAttribute.cs b/OneSignalSDK.DotNet.Android/Utilities/NotificationExtensionAttribute.cs new file mode 100644 index 0000000..796d05c --- /dev/null +++ b/OneSignalSDK.DotNet.Android/Utilities/NotificationExtensionAttribute.cs @@ -0,0 +1,17 @@ +using System; +using System.Diagnostics; +using Android.App; +using Android.Content; + +namespace Com.OneSignal.Android +{ + [Serializable] + [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] + public sealed class NotificationExtensionAttribute : Attribute, Java.Interop.IJniNameProviderAttribute + { + public string Name { get; set; } + public NotificationExtensionAttribute() + { + } + } +} diff --git a/OneSignalSDK.DotNet.nuspec b/OneSignalSDK.DotNet.nuspec index 38f51f9..15df08c 100644 --- a/OneSignalSDK.DotNet.nuspec +++ b/OneSignalSDK.DotNet.nuspec @@ -1,7 +1,7 @@ - 5.1.3 + 5.1.3.1-alpha.1 OneSignalSDK.DotNet OneSignal SDK for .Net6+ and Xamarin OneSignal diff --git a/OneSignalSDK.DotNet/OneSignalSDK.DotNet.csproj b/OneSignalSDK.DotNet/OneSignalSDK.DotNet.csproj index 72dc752..2154237 100644 --- a/OneSignalSDK.DotNet/OneSignalSDK.DotNet.csproj +++ b/OneSignalSDK.DotNet/OneSignalSDK.DotNet.csproj @@ -1,9 +1,10 @@ - net7.0;net7.0-android;net7.0-ios + netstandard2.0;net7.0;net7.0-android;net7.0-ios enable enable + 10.0