Firebase云函数未执行颤振

Firebase云函数未执行颤振,firebase,flutter,google-cloud-platform,google-cloud-functions,Firebase,Flutter,Google Cloud Platform,Google Cloud Functions,我的index.ts文件中有以下函数: import * as functions from 'firebase-functions'; import * as admin from 'firebase-admin'; admin.initializeApp(functions.config().firebase); const db = admin.firestore(); const fcm = admin.messaging(); export const sendToDevice

我的index.ts文件中有以下函数:

import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp(functions.config().firebase);

const db = admin.firestore();
const fcm = admin.messaging();


export const sendToDevice = functions.firestore
      .document('orders/{orderId}')
      .onCreate(async snapshot => {
        print("aa")
        console.log("osakosak");
        const order = snapshot.data();
    
        const querySnapshot = await db
          .collection('users')
          .doc(order.ustaID)
          .collection('tokens')
          .get();
    
        const tokens = querySnapshot.docs.map(snap => snap.id);
    
        const payload: admin.messaging.MessagingPayload = {
          notification: {
            title: 'New Order!',
            body: `you sold a ${order.day} for ${order.time}`,
            click_action: 'FLUTTER_NOTIFICATION_CLICK'
          }
        };
    
        return fcm.sendToDevice(tokens, payload);
      });
但是,当新文档添加到订单集合中时,不会触发此操作。甚至print和console.log也不能工作。我尝试在导出之前放置打印和控制台日志,但它仍然没有启动。

根据您的评论(“它取决于
pubspec.yaml
中的
cloud\u firestore
”),您似乎没有正确部署云功能


事实上,云功能完全独立于你的Flitter应用程序(你的前端)。这是一项后端服务。您应该使用Firebase CLI部署它,请参阅。请注意,代码应在Firebase项目中,而不是在Flatter项目中。

因为,您应该初始化
Firebase admin
,如下所示:
admin.initializeApp()我更改了它,但结果是相同的@renaudtarnec,你看不到
console.log(“osakosak”)在日志中?不,不是在应用程序启动时,也不是在文档创建时,而是在云功能正确部署时。您在云功能控制台中看到了什么?在谷歌云控制台中?