我有多个 env 方案设置 dev 和 prod,因此每个 env 有两个 firebase 项目。我在 iOS 上设置了两个方案 prod 和 dev,并按照链接https://www.tengio.com/blog/multiple-firebase-environments-with-flutter/的说明一步步操作,但是当我尝试登录时使用谷歌单点登录我收到此错误Unhandled Exception: PlatformException(google_sign_in, Your app is missing support for the following URL schemes我缺少什么?
错误日志:
\n\n[VERBOSE-2:ui_dart_state.cc(157)] Unhandled Exception: PlatformException(google_sign_in, Your app is missing support for the following URL schemes: com.googleusercontent.apps.xxxxxx-yyyyy, NSInvalidArgumentException)\n#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)\n#1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321:33)\n<asynchronous suspension>\n#2 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:349:48)\n#3 MethodChannelGoogleSignIn.signIn (package:google_sign_in_platform_interface/src/method_channel_google_sign_in.dart:45:10)\n#4 GoogleSignIn._callMethod (package:google_sign_in/google_sign_in.dart:227:42)\n<asynchronous suspension>\n#5 GoogleSignIn._addMethodCall.<anonymous closure> (package:google_sign_in/google_sign_in.dart:291:16)\n#6 _rootRunUnary (dart:async/zone.dart:1134:38)\n#7 _CustomZone.runUnary (dart:async/zon<\xe2\x80\xa6>\nLost connection to device.\nRun Code Online (Sandbox Code Playgroud)\n\n谢谢
\n亲爱的,
我正在使用provider dart 包,它允许侦听器获得有关模型本身更改的通知。
我能够检测到我的主应用程序根树中的更改,并且还能够更改初始路由的字符串值,但是我的屏幕没有更新。请参阅下面的代码片段和注释行:
void main() => runApp(_MyAppMain());
class _MyAppMain extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MultiProvider(
providers: [
ChangeNotifierProvider<UserProvider>.value(
value: UserProvider(),
),
ChangeNotifierProvider<PhoneProvider>.value(
value: PhoneProvider(),
)
],
child: Consumer<UserProvider>(
builder: (BuildContext context, userProvider, _) {
return FutureBuilder(
future: userProvider.getUser(),
builder: (BuildContext context, AsyncSnapshot<User> snapshot) {
if (!snapshot.hasData) {
return Center(
child: CircularProgressIndicator(),
);
}
final User user = snapshot.data;
String initialScreen = LoginScreen.path;
// (1) I am able to get into the condition
if …Run Code Online (Sandbox Code Playgroud)