Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Added
- Migration guide for updating from 2.x.x to 3.x.x
Changed
- Added support for OneSignal iOS functionality
setLaunchURLsInApp
- Improved included README for changing the notification icons in the Android plugin.
- Added inline documentation and Unity idiomatic fields to the
InAppMessageActionFixed
- Android deserialization of
NotificationAction type now accounts for actionID
- Android deserialization of
Notification type now accounts for additionalData in all cases
- Reverted #430 due to a deprecation of where Android resources can be stored in Unity. Notification icons to be changed for Android can again be found at
Assets/Plugins/Android/OneSignalConfig.plugin. Fixes #470
- Example code for
PostNotification to show an example that works without the API key
- Reimplemented support for
RemoveExternalUserId
- Reimplemented
disablePush as PushEnabled
- iOS deserialization of
Notification type now accounts for additionalData and rawPayload in all cases
- iOS notifications opened from cold start will be received via
NotificationOpened
- Added missing
Notification fields
- Added prefix to the NSExtensionPrincipalClass in the NotificationServiceExtension Info.plist
- Error deserialization for identity methods on Android
Changed
- Updated VSP Attribution with the latest version of script
- Moved EDM4U installer step to the core package as it is needed for both platforms
Fixed
- Checks for VERSION file before attempting to read it
- Added podfile amendments to iOS Append builds
- Include utilities necessary for independent use of the initial unitypackage install
- Removed unused helper method in the iOS post processor which used code from after Unity 2018
Fixed
- iOS build post processor will determine extension's imported OneSignalXCFramework from the package's dependencies xml. Fixes #442
- iOS callbacks for the
NotificationPermissionChanged event will no longer cause an il2cpp exceptionChanged
- Added AndroidManifest with location permissions to the example app to display
PromptLocation
InstallEdm4uStep now imports version 1.2.169 of EDM4U
- Log an error in the example app when
RequiresPrivacyConsent is attempted to be set to false from true
- Internal state mappings on iOS now rely on class defined objects over dynamic Dictionary types
- Replaced manual manipulation of iOS entitlements in post processing with Unity's ProjectCapabilityManager
Changed
- Default export path for notification icons on Android changed to
Assets/Plugins/Android/res
- Froze imported OneSignal iOS SDK to 3.10.0 release
- Froze imported OneSignal Android SDK to 4.6.5 release
Removed
- Legacy AndroidManifest from past version of imported OneSignal Android SDK
- Legacy Android notification icons
Added
- Included a new setup step from the OneSignal Unity Editor menu (Window > OneSignal) which syncs the example code bundle with the core package version
Fixed
NotificationPermission return from native SDK no longer raises a casting exception on iOS
- Resolved infinite loops on logging initialization conditions
- iOS postprocessing will respect existing entitlement files
- Will no longer init SDK again if done before
RuntimeInitializeOnLoadMethod
Fixed
- Eliminated syntax only supported on Unity 2020 or above
- Global callbacks on Android are now correctly setup post
initWithContext
- Properly push
LogLevel and AlertLevel settings to native SDKs
- Added missing setter to override the detected language. Fixes #416
- Add missing getters for permission and subscription states
Changed
- Implemented missing
Notification properties additionalData and actionButtons
LogLevel and AlertLevel now use a custom enum instead of the Unity LogType
- Removed
PermissionState in favor of NotificationPermission enum
- Renamed
PermissionStateChanged event to NotificationPermissionChanged
Fixed
- Correctly namedspaced the common MiniJSON utility to fix #404
- Ensured code distributed with unitypackage would not reference other packages if missing
- Swapped out code that was only available in Unity 2020 for backwards compatible implementations
- Complete overhaul to the public API of the SDK. While this release is in beta please see our included example MonoBehaviour for usage.
- The included OneSignal Android SDK is now fully imported via EDM4U/gradle and will pull the latest version. Please see OneSignal-Android-SDK Releases for latest changes.
- The included OneSignal iOS SDK is now fully imported via EDM4U/Cocoapods and will pull the latest version. Please see OneSignal-iOS-SDK Releases for latest changes.
If you run into any problems, please don’t hesitate to open an issue!
Added
Changed
- Updated included Android SDK to 3.16.2
- Fixes for background image not showing and text not rendering in the RTL direction when a RTL system language is set. #1475
- Fix IAM preview message returning NPE in a preview case, due to message id being null. #1463
Fixed
- Removed use of C# 8.0 features to maintain compatibility
Changed
- Updated included Android SDK to 3.16.1
- Avoid continuing with null IAM message Ids #1386
- Updated included iOS SDK to version 2.16.7
- In App Messaging now respects device orientation locks for Unity Applications #1000
Fixed
- Added a delayed call when attempting to reshow the
OneSignalSetupWindow after importing packages.
- Moved the example code to a separate assembly definition so that it may be utilized in place.
- The EDM4U setup step will rename the
Google.IOSResolver_v1.2.165.dll on import in Unity 2021 and above. See EDM4U issue #441 for more information.Changed
- Updated formatting and documentation within the OneSignalExampleBehaviour.cs example code for clarity.
- Marked
EnabledVibrate and EnableSound as Obsolete with as they do not function on Android 8+. Please check out https://documentation.onesignal.com/docs/android-notification-categories for more information.
Fixed
Fixed
- Corrected directory separators in post processor when building for iOS in a Windows environment. From PR #376 by @SplenectomY. Fixes #375, #377, #380
Added
- A new Editor window under Window > OneSignal can be found which currently includes additional setup steps for installation.
Changed
- The OneSignal Unity SDK has now transitioned to Unity Package Manager support
- If you are updating from a previous version of the OneSignal Unity SDK please follow the Unity Asset Store instructions in the README to ensure a smooth transition.