【发布时间】:2019-01-14 13:45:40
【问题描述】:
我在我的 android 应用程序中使用 firebase 作为后端服务。如果用户未登录,我正在尝试将用户导航到登录屏幕。我正在检查 main.dart 文件中的身份验证状态. 当应用程序启动时,我在我的 logcat 窗口中得到了一些东西,比如:
E/FirebaseInstanceId(10239): Failed to resolve target intent service, skipping classname enforcement
E/FirebaseInstanceId(10239): Error while delivering the message: ServiceIntent not found.
下面是我的代码:
main.dart
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'package:google_sign_in/google_sign_in.dart';
import './home.dart';
import './orders.dart';
import './account.dart';
import './login.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: MyTabs(),
debugShowCheckedModeBanner: false,
routes: <String,WidgetBuilder>{
'/login':(BuildContext context) => Login()
},
theme: ThemeData(
primaryColor: Colors.white,
primaryColorDark: Colors.grey,
accentColor: Colors.green
),
);
}
}
class MyTabs extends StatefulWidget {
@override
_MyTabsState createState() => _MyTabsState();
}
class _MyTabsState extends State<MyTabs> {
FirebaseAuth auth = FirebaseAuth.instance;
int selectedIndex = 0;
final pages = [Home(),Orders(),Account()];
void choosePage(int index){
setState(() {
selectedIndex = index;
});
}
@override
void initState() {
super.initState();
if(auth.currentUser() == null){
Navigator.of(context).pushReplacementNamed("/login");
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("Tiffino")
),
body: pages[selectedIndex],
bottomNavigationBar: BottomNavigationBar(
currentIndex: selectedIndex,
fixedColor: Colors.black,
onTap: choosePage,
items: [
BottomNavigationBarItem(
icon: Icon(Icons.home),
title: Text("Home")
),
BottomNavigationBarItem(
icon: Icon(Icons.list),
title: Text("Orders")
),
BottomNavigationBarItem(
icon: Icon(Icons.person),
title: Text("Account")
)
]
)
);
}
}
如果我在上面的代码中做错了,请有人纠正我。
谢谢
【问题讨论】:
标签: android firebase flutter firebase-authentication