OneSignal
OneSignal plugin for Cordova and Ionic. The OneSignal plugin is an client implementation for using the [OneSignal](https://onesignal.com/) Service. OneSignal…
The OneSignal plugin is an client implementation for using the OneSignal Service. OneSignal is a simple implementation for delivering push notifications.
As of onesignal-cordova-plugin v5.0.0, OneSignal moved to a user-centric API split across the OneSignal, OneSignalUser, OneSignalUserPushSubscription, OneSignalNotifications, OneSignalSession, OneSignalLocation, OneSignalInAppMessages, OneSignalDebug and OneSignalLiveActivities injectables in this package. The flat methods below (startInit, sendTag, etc.) were removed upstream in v5.0.0 and are kept here only for backwards compatibility; they are marked @deprecated with their v5+ replacement.
Please view the official OneSignal Ionic SDK Installation guide for more information.
Icons
If you want to use generated icons with command ionic cordova resources:
Add a file to your
hooksdirectory calledcopy_android_notification_icons.jsConfigure the hook in your config.xml
<platform name="android">
<hook type="after_prepare" src="hooks/copy_android_notification_icons.js" />
</platform>Put the following code in it:
#!/usr/bin/env node
var fs = require('fs');
var path = require('path');
var filestocopy = [{
"resources/android/icon/drawable-hdpi-icon.png":
"platforms/android/app/src/main/res/drawable-hdpi/ic_stat_onesignal_default.png"
}, {
"resources/android/icon/drawable-mdpi-icon.png":
"platforms/android/app/src/main/res/drawable-mdpi/ic_stat_onesignal_default.png"
}, {
"resources/android/icon/drawable-xhdpi-icon.png":
"platforms/android/app/src/main/res/drawable-xhdpi/ic_stat_onesignal_default.png"
}, {
"resources/android/icon/drawable-xxhdpi-icon.png":
"platforms/android/app/src/main/res/drawable-xxhdpi/ic_stat_onesignal_default.png"
}, {
"resources/android/icon/drawable-xxxhdpi-icon.png":
"platforms/android/app/src/main/res/drawable-xxxhdpi/ic_stat_onesignal_default.png"
} ];
module.exports = function(context) {
// no need to configure below
var rootdir = context.opts.projectRoot;
filestocopy.forEach(function(obj) {
Object.keys(obj).forEach(function(key) {
var val = obj[key];
var srcfile = path.join(rootdir, key);
var destfile = path.join(rootdir, val);
console.log("copying "+srcfile+" to "+destfile);
var destdir = path.dirname(destfile);
if (fs.existsSync(srcfile) && fs.existsSync(destdir)) {
fs.createReadStream(srcfile).pipe(
fs.createWriteStream(destfile));
}
});
});
};From the root of your project make the file executable:
$ chmod +x hooks/copy_android_notification_icons.js
Installation
Plugin Repo: https://github.com/OneSignal/OneSignal-Cordova-SDK
Supported Platforms
Android
iOS
Further Information
Last updated