push-уведомление на определенное устройство от другого с помощью firebase android java

#android #firebase #google-cloud-functions #firebase-cloud-messaging

#Android #firebase #google-cloud-функции #firebase-облако-обмен сообщениями

Вопрос:

Мне нужна ваша помощь с моим кодом, мне нужно отправить уведомление, когда пользователь выполняет действие из своего приложения, чтобы уведомить другого пользователя (у которого у меня есть токен его устройства).

Что я уже сделал: сначала установите node.js и из него загрузите firebase admin SDK, войдите в систему и подключите его к моему проекту на firebase, пока я не подключу Firebase CLI успешно.

затем я открыл index.js файл и добавьте к нему этот код:

 const functions = require('firebase-functions');
//import admin module
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);

exports.pushNotification = functions.database.ref('/YourNode/{pushId}').onWrite((change, context) => {
    console.log('Push notification event triggered');

    //  Get the current value of what was written to the Realtime Database.
    const valueObject = change.after.val(); 

    // Create a notification
    const payload = {
        notification: {
            title: valueObject.title,
            body: valueObject.message,
            sound: "default"
        }
    };

    //Create an options object that contains the time to live for the notification and the priority
    const options = {
        priority: "high",
        timeToLive: 60 * 60 * 24
    };

    return admin.messaging().sendToTopic("pushNotifications", payload, options);
});
 
  

а затем я возвращаюсь к экрану cmd и ввожу firebase deploy, но на этом этапе он возвращает ошибку, которая:

после развертывания firebase

и когда я решил эту проблему в Google, я понял, что мне нужно заплатить за членство в firebase, верно?

Что мне нужно

1- Если это правильно, правильно ли мой код и мои шаги? и что мне делать дальше, чтобы заставить уведомления работать?

2- Можете ли вы помочь мне дать правильные и конкретные шаги для достижения этой цели?

Пожалуйста, не давайте мне никаких ссылок на firebase, я прочитал всю документацию и действительно запутался.

Спасибо за ваше время, жду вашей помощи 🙂

Комментарии:

1. Просто чтобы уточнить: точный случай заключается в том, что вам нужно отправить push-сообщение кому-то другому по какому-либо запросу на ваш node.js приложение? И где вы размещаете свой node.js приложение?

2. @mrpasqal из общего кода и тегов, которые, по-видимому, являются облачными функциями Firebase .

3. Ответ на один вопрос, который я мог бы задать, приведен ниже. Если вопросы № 1 и № 2 все еще применимы к этому ответу, пожалуйста, отредактируйте свой вопрос, чтобы показать, в чем проблема при запуске этого кода.

4. @mrpasqal Я пытаюсь использовать облачную функцию Firebase для отправки этих push-уведомлений в случае, если другое пользовательское приложение переходит в спящий режим

Ответ №1:

Я подумал, что мне нужно заплатить за членство в firebase, верно?

Если ваш код требует Node.js 10 или выше, он больше не может быть развернут на бесплатном плане Firebase, и вам действительно нужно будет перейти на платный план. В сообщении об ошибке, которое вы получаете, также явно упоминается об этом. Я рекомендую изучить часто задаваемые вопросы о ценах Firebase по облачным функциям, поскольку это довольно сложно, и я не хочу неправильно цитировать это.

Комментарии:

1. Спасибо за ответ, мне нужно быть уверенным, что я делаю правильные шаги, чтобы получить уведомление? Если это так, я буду платить за план.