awesome-cordova-plugins/docs/plugins/onesignal/README.md

93 lines
2.9 KiB
Markdown
Raw Normal View History

2021-09-29 20:09:02 +08:00
<a style="float:right;font-size:12px;" href="http://github.com/danielsogl/awesome-cordova-plugins/edit/master/src/@awesome-cordova-plugins/plugins/onesignal/index.ts#L325">
Improve this doc
</a>
# OneSignal
```
$ ionic cordova plugin add onesignal-cordova-plugin
$ npm install @ionic-native/plugins/onesignal
```
## [Usage Documentation](https://ionicframework.com/docs/native/onesignal/)
Plugin Repo: [https://github.com/OneSignal/OneSignal-Cordova-SDK](https://github.com/OneSignal/OneSignal-Cordova-SDK)
The OneSignal plugin is an client implementation for using the [OneSignal](https://onesignal.com/) Service.
OneSignal is a simple implementation for delivering push notifications.
Please view the official [OneSignal Ionic SDK Installation](https://documentation.onesignal.com/docs/ionic-sdk-setup) guide
for more information.
#### Icons
If you want to use generated icons with command `ionic cordova resources`:
1. Add a file to your `hooks` directory called `copy_android_notification_icons.js`
2. Configure the hook in your config.xml
```
<platform name="android">
<hook type="after_prepare" src="hooks/copy_android_notification_icons.js" />
</platform>
```
3. 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));
}
});
});
};
```
3. From the root of your project make the file executable:
2021-09-29 20:38:45 +08:00
`$ chmod +x hooks/copy_android_notification_icons.js`
2021-09-29 20:09:02 +08:00
## Supported platforms
- Amazon Fire OS
- Android
- iOS
- Windows
2021-09-29 20:38:45 +08:00