Android 设置firebase时出错,可能存在未处理的承诺拒绝
我目前正在创建一个食品订购系统,并试图在react native项目上建立firebase 该应用程序允许我使用firebase的身份验证,我可以成功登录并注册新用户,但它不允许我使用firestore 我正在尝试在我的中的以下代码中执行控制台日志,以查看firestore是否将与应用程序一起运行 下面是app.js/屏幕列表,我正在从firestore调用该集合 错误是这样的 //在android emulator上读取错误 build.gradle应用程序级别和 //用于react的程序包列表 package.jsonAndroid 设置firebase时出错,可能存在未处理的承诺拒绝,android,reactjs,firebase,react-native,google-cloud-firestore,Android,Reactjs,Firebase,React Native,Google Cloud Firestore,我目前正在创建一个食品订购系统,并试图在react native项目上建立firebase 该应用程序允许我使用firebase的身份验证,我可以成功登录并注册新用户,但它不允许我使用firestore 我正在尝试在我的中的以下代码中执行控制台日志,以查看firestore是否将与应用程序一起运行 下面是app.js/屏幕列表,我正在从firestore调用该集合 错误是这样的 //在android emulator上读取错误 build.gradle应用程序级别和 //用于react的程序包
"name": "projectFinal",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint ."
},
"dependencies": {
"@react-native-community/masked-view": "^0.1.7",
"@react-native-firebase/app": "^6.3.4",
"@react-native-firebase/auth": "^6.3.4",
"@react-native-firebase/firestore": "^6.3.4",
"firebase": "^7.9.3",
"react": "16.9.0",
"react-native": "0.60.5",
"react-native-elements": "^1.2.7",
"react-native-gesture-handler": "^1.6.0",
"react-native-reanimated": "^1.7.0",
"react-native-safe-area-context": "^0.7.3",
"react-native-safe-area-view": "^1.0.0",
"react-native-screens": "^2.2.0",
"react-native-vector-icons": "^6.6.0",
"react-navigation": "^4.2.2",
"react-navigation-header-buttons": "^3.0.5",
"react-navigation-stack": "^2.2.2",
"react-navigation-tabs": "^2.8.2"
},
"devDependencies": {
"@babel/core": "^7.8.6",
"@babel/runtime": "^7.8.4",
"@react-native-community/eslint-config": "^0.0.7",
"babel-jest": "^25.1.0",
"eslint": "^6.8.0",
"jest": "^25.1.0",
"metro-react-native-babel-preset": "^0.58.0",
"react-test-renderer": "16.9.0"
},
"jest": {
"preset": "react-native"
}
}
app.js
import React, { Component } from 'react';
import { View, StyleSheet, Text } from 'react-native';
import {createAppContainer, createSwitchNavigator} from 'react-navigation';
import {createStackNavigator} from 'react-navigation-stack';
import {createBottomTabNavigator, createTabNavigator} from 'react-navigation-tabs'
import Icon from 'react-native-vector-icons/Ionicons'
import { HeaderButtons, HeaderButton, Item } from 'react-navigation-header-buttons';
import Home from './src/Screens/Home'
//import MyAccount from './Screens/MyAccount';
import Register from './src/Screens/Register'
import Login from './src/Screens/Login';
//import Menus from './Screens/Menus';
import LoadingScreen from './src/Screens/LoadingScreen';
// import Jitters from './Screens/Jitters';
// import Scullery from './Screens/Scullery';
// import Bunker from './Screens/TheBunker';
// import OrderDetails from './Screens/OrderDetails';
import ViewOrder from './src/Screens/ViewOrder';
import "firebase/firestore"
import firebase from "firebase"
import firestore from "@react-native-firebase/firestore"
//this is where firebase is initializedd the google.services json is also in the relevant file
const firebaseConfig = {
apiKey: "AIza<<redacted>>",
authDomain: "<<redacted>>.firebaseapp.com",
databaseURL: "https://<<redacted>>.firebaseio.com",
projectId: "<<redacted>>",
storageBucket: "<<redacted>>.appspot.com",
messagingSenderId: "<<redacted>>",
appId: "1:8<<redacted>>",
measurementId: "G-T<<redacted>>"
};
// Instantiate a Firebase app.
const firebaseApp = firebase.initializeApp(firebaseConfig);
const db = firebaseApp.firestore()
const TabNavigator = createBottomTabNavigator(
{
Home: {
screen: Home,
navigationOptions: {
TabBarIcon: ({ tintColor}) => <Ionicons name="ios-home" size={24} color={tintColor}/>
}
},
// Menus: {
// screen: Menus,
// navigationOptions: {
// TabBarIcon: ({ tintColor}) => <Ionicons name="ios-chatbox" size={24} color={tintColor}/>
// }
ViewOrder: {
screen: ViewOrder,
navigationOptions: {
TabBarIcon: ({ tintColor}) => <Ionicons name="ios-add-circle" size={24} color={tintColor}/>
},
}
},
{
tabBarOptions: {
activeTintColor: "#161F3D",
inactiveTintColor: "#E9446A",
showLabel: true
}
}
);
const authStack = createStackNavigator(
{
Home: Home,
Login: Login,
Register: Register,
// Menu: Menus,
// Jitters: Jitters,
// Scullery: Scullery,
// TheBunker: Bunker,
// MyAccount: MyAccount,
// OrderDetails: OrderDetails,
ViewOrder: ViewOrder
});
const App = createAppContainer(TabNavigator);
export default createAppContainer(
(
createSwitchNavigator({
Loading: LoadingScreen,
App: TabNavigator,
Auth: authStack
},
{
initalRouteName: "Loading Page"
}
)
)
);
##Screen to call a collection of firestore##
//this is a console log to see if firestore will initialize
import React, {useState} from 'react'
import {View, Text} from 'react-native'
import firebase from "firebase"
import firestore from "@react-native-firebase/firestore"
async function myFunction() {
var user = firebase.auth().currentUser;
let x = await firestore().collection("Users").doc("MmjyeGlhFPu0g6pK0GQ2").get();
// console.log(x)
}
export default class ViewOrder extends React.Component {
componentDidMount() {
myFunction(
)
}
render() {
return(
<View>
<Text>Hello</Text>
</View>
)}
**//error reads on android emulator**
as possible unhandled promise rejection (id:0)
error: no firebase app ['default] has been created - call
firebase.initalize.app() getapp@http://10.0.2.2.8081/index.bundle
?platform
“名称”:“projectFinal”,
“版本”:“0.0.1”,
“私人”:没错,
“脚本”:{
“android”:“react native run android”,
“ios”:“反应本机运行ios”,
“启动”:“反应本机启动”,
“测试”:“玩笑”,
“lint”:“eslint”
},
“依赖项”:{
“@react本地社区/屏蔽视图”:“^0.1.7”,
“@react native firebase/app”:“^6.3.4”,
“@react native firebase/auth”:“^6.3.4”,
“@react native firebase/firestore”:“^6.3.4”,
“firebase”:“^7.9.3”,
“反应”:“16.9.0”,
“反应本机”:“0.60.5”,
“反应本机元素”:“^1.2.7”,
“反应本机手势处理程序”:“^1.6.0”,
“react native Reactivated”:“^1.7.0”,
“反应本机安全区域上下文”:“^0.7.3”,
“反应本机安全区域视图”:“^1.0.0”,
“反应本机屏幕”:“^2.2.0”,
“反应本机矢量图标”:“^6.6.0”,
“反应导航”:“^4.2.2”,
“反应导航标题按钮”:“^3.0.5”,
“反应导航堆栈”:“^2.2.2”,
“反应导航选项卡”:“^2.8.2”
},
“依赖性”:{
“@babel/core”:“^7.8.6”,
“@babel/runtime”:“^7.8.4”,
“@react native community/eslint config”:“^0.0.7”,
“巴别塔笑话”:“^25.1.0”,
“eslint”:“^6.8.0”,
“玩笑”:“^25.1.0”,
“metro react native babel预设”:“^0.58.0”,
“反应测试渲染器”:“16.9.0”
},
“笑话”:{
“预设”:“本机反应”
}
}
app.js
从“React”导入React,{Component};
从“react native”导入{View,StyleSheet,Text};
从“反应导航”导入{createAppContainer,createSwitchNavigator};
从“反应导航堆栈”导入{createStackNavigator};
从“反应导航选项卡”导入{CreateBoottomTabNavigator,createTabNavigator}
从“反应本机矢量图标/Ionicons”导入图标
从“反应导航标题按钮”导入{HeaderButtons,HeaderButton,Item};
从“/src/Screens/Home”导入主页
//从“/Screens/MyAccount”导入MyAccount;
从“./src/Screens/Register”导入寄存器
从“/src/Screens/Login”导入登录名;
//从“./屏幕/菜单”导入菜单;
从“/src/Screens/LoadingScreen”导入加载屏幕;
//从“/Screens/Jitters”导入抖动;
//从“./Screens/Scullery”导入餐具;
//从“/Screens/TheBunker”导入存储库;
//从“/Screens/OrderDetails”导入OrderDetails;
从“/src/Screens/ViewOrder”导入ViewOrder;
导入“firebase/firestore”
从“firebase”导入firebase
从“@react native firebase/firestore”导入firestore
//这是firebase初始化的地方,google.services json也在相关文件中
常量firebaseConfig={
阿皮奇:“艾扎”,
authDomain:“.firebaseapp.com”,
数据库URL:“https://.firebaseio.com",
投射:“,
storageBucket:“.appspot.com”,
messagingSenderId:“”,
附录:“1:8”,
测量:“G-T”
};
//实例化Firebase应用程序。
const firebaseApp=firebase.initializeApp(firebaseConfig);
const db=firebaseApp.firestore()
const TabNavigator=createBottomTabNavigator(
{
主页:{
屏幕:主页,
导航选项:{
TabBarIcon:({tintColor})=>
}
},
//菜单:{
//屏幕:菜单,
//导航选项:{
//TabBarIcon:({tintColor})=>
// }
视图顺序:{
屏幕:ViewOrder,
导航选项:{
TabBarIcon:({tintColor})=>
},
}
},
{
选项卡选项:{
activeTintColor:#161F3D“,
不活动IntColor:#E9446A“,
showLabel:正确
}
}
);
const authStack=createStackNavigator(
{
家:家,
登录:登录,
注册:注册,
//菜单:菜单,
//紧张:紧张,
//餐具室:餐具室,
//地堡:地堡,
//MyAccount:MyAccount,
//OrderDetails:OrderDetails,
视图顺序:视图顺序
});
const App=createAppContainer(TabNavigator);
导出默认createAppContainer(
(
createSwitchNavigator({
加载:加载屏幕,
应用程序:TabNavigator,
Auth:authStack
},
{
initalRouteName:“加载页面”
}
)
)
);
##调用firestore集合的屏幕##
//这是一个控制台日志,用于查看firestore是否将初始化
从“React”导入React,{useState}
从“react native”导入{View,Text}
从“firebase”导入firebase
从“@react native firebase/firestore”导入firestore
异步函数myFunction(){
var user=firebase.auth().currentUser;
设x=wait firestore().collection(“Users”).doc(“MmjyeGlhFPu0g6pK0GQ2”).get();
//console.log(x)
}
导出默认类ViewOrder扩展React.Component{
componentDidMount(){
我的功能(
)
}
render(){
返回(
你好
)}
**//在android emulator上读取错误**
尽可能未经处理的承诺拒绝(id:0)
错误:未创建firebase应用程序['default]