This package helps you make expo push notification for React Native easy to use.
Add expo-push-notification-helper to your project by executing
$ npm install expo-push-notification-helper
or
$ yarn add expo-push-notification-helper
You're all set!
//import the initnotify into your project
import { initnotify } from 'expo-push-notification-helper';
//and then use like so
initnotify();
this will also automatically create three channels for your app, "default", "reminders", "chat-messages" .
//import the initnotify into your project
import { initnotify } from 'expo-push-notification-helper';
//and then use like so
initnotify().then((data)=>{
if(data){
//get token
}else{
//request for permission
}
});
//import the getToken into your project
import { initnotify, getToken } from 'expo-push-notification-helper';
//and then use like so
initnotify().then( async(data)=>{
if(data){
console.log(await getToken());
}else{
alert('please grant this app notification permission in settings.')
}
})
//import the newChannel into your project
import { newChannel } from 'expo-push-notification-helper';
//and then use like so
newChannel("GroupMessage");
on default your channel will be created sound being false but you can change that by adding true as a second input
//import the notify into your project
import { notify } from 'expo-push-notification-helper';
//and then use like so
notify(token, "new message", "hello there how are you doing", "default")
Name | Use | callback | note |
---|---|---|---|
initnotify() | initialize package, this will ask for notification permission. | true, false | this will also automatically create three channels for your app, "default", "reminders", "chat-messages" . |
getToken() | get expo token of device | null | must be called in async/await |
newChannel(name, isSound) | create new notification channel | true, false | isSound is a boolean |
notify( token, title, body, channel ) | send push notification | null | without providing a channel. channel will be set to default by default |
Have a new feature you'd love to add to this project? Make a Send me a pull request! Just follow the guidelines. Thank you!
This project is licensed under MIT license.
Thanks goes to these wonderful people (emoji key):
Tomás Vélez Núñez 💻 |
Ujjal Acharya 📖 |
Oluwatobi Shokunbi 💻 📖 |
This project follows the all-contributors specification. Contributions of any kind welcome!