Firebase Cloud Function:& Flutter:无法在模拟器上使用 https 可调用函数 [firebase_functions/unavailable] 不可用

Đặn*_*iếu 5 firebase flutter google-cloud-functions

我试图从我的 flutter 应用程序中使用模拟器调用 HTTPS 可调用函数,但它似乎不起作用。我调用该函数后,总是需要大约 5 秒的时间并返回错误。如果我将该功能部署在服务器上,它就可以完全正常工作。

这是我的功能

exports.try = functions.https.onCall((data, context) => {
  return 1;
});
Run Code Online (Sandbox Code Playgroud)

它位于us-central1

我是如何启动模拟器的

firebase emulators:start --only functions
Run Code Online (Sandbox Code Playgroud)

我如何从代码中调用它

FirebaseFunctions functions = FirebaseFunctions.instance;
functions.useFunctionsEmulator(origin: "http://10.0.2.2:5001");
HttpsCallable callable = functions.httpsCallable('games-oneToHundred-try');
try {
  var result  = await callable();
  print(result.data);
} catch (e) {
  print(e);
}
Run Code Online (Sandbox Code Playgroud)

抛出的错误是:

[firebase_functions/unavailable] UNAVAILABLE
Run Code Online (Sandbox Code Playgroud)

我按照从 Flutter 应用程序连接到本地 Firebase 功能模拟器时出错中的建议修改了 Android 清单,如下所示:

android:usesCleartextTraffic="true"
Run Code Online (Sandbox Code Playgroud)

Đặn*_*iếu 0

问题是我的物理设备无法连接到笔记本电脑的本地主机。使用 Android 模拟器解决了我的问题