expo-notificationslisted
Install: claude install-skill fatihkan/badi
# expo-notifications
Push and local notification setup with `expo-notifications`. iOS (APNs) + Android (FCM) credentials, permission flow, channels (Android 8+), categories, and scheduled notifications.
## What It Does
- `expo-notifications` setup and permission request
- Getting the Expo Push Token + sending it to the backend
- iOS APNs Auth Key and Android FCM Service Account
- Notification categories + action buttons
- Scheduled / repeating notifications
- Channels (Android 8+) and importance levels
- Background notification handler and silent push
## Setup
```bash
npx expo install expo-notifications expo-device expo-constants
```
`app.json`:
```json
{
"expo": {
"plugins": [
["expo-notifications", {
"icon": "./assets/notification-icon.png",
"color": "#ffffff",
"sounds": ["./assets/notification-sound.wav"]
}]
],
"ios": {
"infoPlist": {
"UIBackgroundModes": ["remote-notification"]
}
},
"android": {
"googleServicesFile": "./google-services.json"
}
}
}
```
## Permission + Token
```ts
import * as Notifications from "expo-notifications";
import * as Device from "expo-device";
import Constants from "expo-constants";
import { Platform } from "react-native";
Notifications.setNotificationHandler({
handleNotification: async () => ({
shouldShowAlert: true,
shouldPlaySound: true,
shouldSetBadge: true,
}),
});
export async function registerForPushNotificationsAsync(): Prom