提问人:AndrewHoover898 提问时间:11/17/2023 更新时间:11/17/2023 访问量:44
React-Native-Firebase - 未创建 Firebase 应用程序“[DEFAULT]” - 调用 firebase.initializeApp()(在 Android 上,尽管设置正确)
React-Native-Firebase - No Firebase App '[DEFAULT]' has been created - call firebase.initializeApp() (on Android, despite correct setup)
问:
React Native 0.71.3 + 打字稿。显然,Project 也使用 ProGuard。
我正在尝试通过云消息传递集成推送通知。我只在 Android 上测试过它。
我完成了所有需要的步骤。我错过了什么?
- npm install --save @react-native-firebase/app
- 将我的google-services.json文件放在 /android/app/ 文件夹中
- 添加于
classpath 'com.google.gms:google-services:4.4.0'
/android/build.gradle
- 新增应用插件:/android/app/build.gradle
'com.google.gms.google-services'
- npm install @react-native-firebase/messaging
- npx react-native run-android 重建项目
7)在我的 App.tsx 中
import messaging from '@react-native-firebase/messaging';
- 为了测试,我从文档中添加了这个函数
async function requestUserPermission() {
const authStatus = await messaging().requestPermission();
const enabled =
authStatus === messaging.AuthorizationStatus.AUTHORIZED ||
authStatus === messaging.AuthorizationStatus.PROVISIONAL;
if (enabled) {
console.log('Authorization status:', authStatus);
}
}
- 我在 App.tsx 的 useEffect() 中调用该函数
然而,尽管采取了所有这些步骤,我还是继续得到
Possible Unhandled Promise Rejection (id: 0):
Error: No Firebase App '[DEFAULT]' has been created - call firebase.initializeApp()
我错过了什么?这让我发疯了。
答:
1赞
Cam Hoang
11/17/2023
#1
因为您复制的函数是针对 iOS 的。这需要您为 [FIRApp configure] 添加进一步的初始化; 对于 android,请按照以下指导使用:
import {PermissionsAndroid} from 'react-native';
PermissionsAndroid.request(PermissionsAndroid.PERMISSIONS.POST_NOTIFICATIONS);
评论