-
Notifications
You must be signed in to change notification settings - Fork 1
IOS Local Notification
##Installation
Import this plugin to your Unity project
Now you could build and run application to test. But please read all documentation!
#Create IOSNotification With Code
###Schedule simple notification The package contains code samples in Assets/Area730/Notifications/Examples/Scripts folder. Also you can build and run example scene _Assets/Area730/Notifications/IOS/Examples to test notification.
The notifications are created using IOSNotificationBuilder
class. Its constructor takes 3 arguments - id
of the notification, title
and notification text
.
Next example example shows how to schedule the notification that will be shown immediately:
int id = 1;
string title = "Notification titile";
string body = "Notification body";
IOSNotificationBuilder builder = new IOSNotificationBuilder (id, title, body);
IOSNotifications.scheduleNotification(builder.build());
###Schedule delayed notifications
If you want to set delay - call builder.setDelay(int milliseconds)
or builder.setDelay(System.TimeSpan delayTime)
. The next example shows how to create a notification that will be shown in one hour:
int id = 1;
string title = "Notification titile";
string body = "Notification body";
// Show notification in one hour
TimeSpan delay = new TimeSpan(1, 0, 0);
IOSNotificationBuilder builder = new IOSNotificationBuilder (id, title, body);
builder.setDelay(delay);
IOSNotifications.scheduleNotification(builder.build());
###Repeating notifications
To set repeating notification you should set notification as repeating and set the time interval. According to Apple documntaion it is allowed to repeat notification every:
- Minute
- Hour
- Day
- Month
- Year
int id = 1;
string title = "Notification titile";
string body = "Notification body";
// Show notification in one hour
IOSNotificationBuilder builder = new IOSNotificationBuilder (id, title, body);
builder.setInterval(IntervalUnits.HOUR);
IOSNotifications.scheduleNotification(builder.build());
###Set Up Badge Number
int id = 1;
string title = "Notification titile";
string body = "Notification body";
// Show notification in one hour
IOSNotificationBuilder builder = new IOSNotificationBuilder (id, title, body);
builder.setNumber(3);
IOSNotifications.scheduleNotification(builder.build());
###Settings custom sound
Now its supported only wav
format sound notification.
Next section show how to use custom sound for notification
IOSNotificationBuilder builder = new IOSNotificationBuilder (id, title, body);
builder.setSound("notification_sound");//without wav extention
IOSNotifications.scheduleNotification(builder.build());
*Important When you set up sound via script please add source file to the xCode project into Data/Raw folder manually. If you change audioclips via Editor please check Assets/StreamingAssets and Assets/Plugins/IOS/Notifications folders to delete old clips.
###Cancel notification by id (both repeating and one-time)
//cancel notification with id 7
IOSNotifications.cancelNotification(7);
###Cancel all notification
//cancel all notification
IOSNotifications.cancelAll();
###Clear shown notifications
IOSNotifications.clearAll();
###Updating notifications To update one-time or repeating notification, schedule a notification with updated data and with ID of the notification you want to update.
###Show IOS toast notification
IOSNotifications.showToast("Download completed");
#Create IOSNotification With Visual Tool
To open visual tool to create notification go to Window->IOS Local Notification
Next example shows scheduling of the notification created in editor with name notificationOne
string notificationName = "notificationOne";
// Method returns builder so you can config your notification afterwards if you want
IOSNotificationBuilder builder = IOSNotifications.GetNotificationBuilderByName(notificationName);
// If notification with specified name doesn't exist builder will be null
if (builder != null)
{
IOSNotification notif = builder.build();
IOSNotifications.scheduleNotification(notif);
}
#Push Notification with OneSignal integration
Add CrossPlatformPushNotificationController.cs
to some object in your scene
and paste id
from created application in onesignal. For more information go here.
##Modifying plugin All native source code is holding in Assets/Plugins/IOS/Notifications
##Other All classes are located in Area730.Notifications.IOS namespace
Example scene with sample code is included in the package (Assets/Area730/Notifications/Examples)