首页 > 解决方案 > Xamarin FirebaseApp.InitializeApp(this) 在 60.1142.1 中返回 null

问题描述

我已经查看了网上有关此错误的所有问题。< 42.1021.1 的版本似乎很常见。但是我有最新版本,并且错误仍在发生。

我添加了我的 google-services.json 并选择了适当的构建操作。我已经尝试过清理和重建,但没有成功。我还尝试了解决其他版本中的错误的方法,例如在 csproj 文件中添加目标标记。我试过从json手动输入字符串。

无论我做什么调用 FirebaseApp.InitializeApp(this) 都会返回 null 并且当我尝试引用 FirebaseInstanceId.Instance.Token 时,我会遇到非常常见的异常:

Java.Lang.IllegalStateException:默认 FirebaseApp 在此过程中未初始化确保首先调用 FirebaseApp.initializeApp(Context)。

Github 和 Xamarin 论坛说这已通过 60.1141.1 修复,但从未如此。我还检查了我的 csproj 以确保所有对 GoogleServices 的引用都是针对最新版本的。

我不知道为什么这不起作用,我真的很快需要这个来工作。如果可以的话请帮忙。

我查看了以下资源但没有成功: 在 Xamarin Android 中使用 Firebase 获取异常 https://docs.microsoft.com/en-us/xamarin/android/data-cloud/google-messaging/remote-notifications-with -fcm?tabs=vswin https://bugzilla.xamarin.com/show_bug.cgi?id=56108#c1 默认 FirebaseApp 未初始化 https://forums.xamarin.com/discussion/94464/firebase-cloud-messaging- app-not-initialized Xamarin.android 默认 FirebaseApp 未在此过程中初始化

还有更多我无法追踪。为什么这个版本还出现这个bug???

标签: firebasexamarinfirebase-cloud-messaginggoogle-play-services

解决方案


我遇到了同样的问题,经过一番调查后,我尝试以这种方式在 OnCreate 方法中手动启动它

var options = new FirebaseOptions.Builder()
  .SetApplicationId("<AppID>")
  .SetApiKey("<APIKey>")
  .SetDatabaseUrl("https://<url>.firebaseio.com")
  .SetStorageBucket("*.appspot.com")
  .SetGcmSenderId("<senderID").Build();
  var fapp = FirebaseApp.InitializeApp(this, options);

  LoadApplication(App);

  PushNotificationManager.ProcessIntent(this, Intent);

这对我有用,似乎构建过程“GoogleServiceJson”不起作用,应该这样做。最好的问候,托马斯


推荐阅读