У меня есть собственная база реагирования, куда я отправляю уведомление с моего внутреннего сервера node.js. Я хочу инициировать некоторые действия на основе данных уведомлений. и работает только когда приложение открыто. Он работает, как ожидалось, когда приложение работает, но не когда приложение находится в фоновом режиме или убито. Может ли кто-нибудь помочь мне, что я делаю неправильно, или я что-то упускаю?
const App = () => {
useEffect(() => {
const messageListener = firebase.messaging().onMessage((message) => {
console.log("message", message);
})
const messageCheck = firebase.notifications().onNotificationDisplayed((notification) => {
console.log("notitication", notification);
const { sound } = notification.data;
console.log("sound", sound);
playSound(sound);
})
const firebaseNotification = firebase.notifications().onNotification((notification) => {
console.log("notitication", notification);
const { sound } = notification.data;
console.log("sound", sound);
playSound(sound);
})
return () => {
messageListener();
firebaseNotification();
messageCheck();
}
})
return (
<Provider store={store}>
<SafeAreaView style={{ flex: 1 }}>
<View style={{ flex: 1, backgroundColor: 'red' }}>
<Text> Hello World </Text>
</View>
</SafeAreaView>
</Provider>
)
}
export default App;
Я пытался добавить эту строку в свой индекс. js код приложения-родного приложения
index. js file
AppRegistry.registerHeadlessTask('RNFirebaseBackgroundMessage', () => bgMessaging)
bgMessaging. js file
import firebase from 'react-native-firebase';
export default async (message) => {
console.log("inside bgMessaging", message);
}