C# CrossCurrentActivity在依赖项中为null,即使它已初始化且在应用程序中不为null

C# CrossCurrentActivity在依赖项中为null,即使它已初始化且在应用程序中不为null,c#,xamarin.forms,plugins,xamarin.android,dependencies,C#,Xamarin.forms,Plugins,Xamarin.android,Dependencies,在我的项目中,我使用电话号码登录 它在iOS项目中运行良好,但在Android中,VerifyPhoneNumberAsync()调用 正在从CrossCurrentActivity.current.activity???签入中抛出“当前活动为空” Plugin.CurrentActivity已初始化(以前在MainActivity.cs中,但现在根据建议在MainApplication.cs中),没有错误,请参见: MainActivity.cs OnCreate(): MainApplica

在我的项目中,我使用电话号码登录

它在iOS项目中运行良好,但在Android中,VerifyPhoneNumberAsync()调用

正在从
CrossCurrentActivity.current.activity???
签入中抛出“当前活动为空”

Plugin.CurrentActivity已初始化(以前在MainActivity.cs中,但现在根据建议在MainApplication.cs中),没有错误,请参见:

MainActivity.cs OnCreate():

MainApplication.cs OnCreate():

无论在何处初始化CurrentActivity,调用VerifyPhoneNumberAsync()时都会出现相同的null错误

添加

var activity = CrossCurrentActivity.Current.Activity ?? throw new NullReferenceException("current activity is null"); 
my MainActivity.cs中的行不会直接抛出错误

还有什么我可以忽略的吗

依赖版本
  • Plugin.FirebaseAuth 1.1.2
  • Xamarin.表格4.4.0.991265

不使用init方法,只需将MainActivity分配给插件当前活动即可

Plugin.CurrentActivity.CrossCurrentActivity.Current.Init(this, bundle);
尝试以下解决方案以设置当前活动

Plugin.CurrentActivity.CrossCurrentActivity.Current.Init(this, bundle);
取代

CrossCurrentActivity.Current.Activity = this;

我也有同样的问题。我已经通过在我的案例中应用相同的工作解决方案解决了这个问题。

而不是init方法,只需将MainActivity分配给插件当前活动

Plugin.CurrentActivity.CrossCurrentActivity.Current.Init(this, bundle);
尝试以下解决方案以设置当前活动

Plugin.CurrentActivity.CrossCurrentActivity.Current.Init(this, bundle);
取代

CrossCurrentActivity.Current.Activity = this;

我也有同样的问题。我已经通过在我的案例中应用相同的工作解决方案解决了这个问题。

如果插件在您的项目中不起作用

您可以尝试以下代码

//current activity
var currentActivity= Android.App.Activity;

//current context
var currentContext = Android.App.Application.Context;

如果插件在您的项目中不起作用

您可以尝试以下代码

//current activity
var currentActivity= Android.App.Activity;

//current context
var currentContext = Android.App.Application.Context;

不幸的是,之前建议的解决方案在我的场景中都不起作用。但是,该问题在升级多个依赖项后自行解决,包括:

  • Plugin.FirebaseAuth 3.1.0
  • Xamarin.表格4.6.0.800

不幸的是,之前建议的解决方案在我的场景中都不起作用。但是,该问题在升级多个依赖项后自行解决,包括:

  • Plugin.FirebaseAuth 3.1.0
  • Xamarin.表格4.6.0.800

感谢您的分享!唉,在我的情况下它不起作用,但我希望它能帮助其他偶然发现这篇文章的人。谢谢分享!唉,在我的情况下,它不起作用,但我希望它能帮助偶然发现这篇文章的其他人。你找到解决方案了吗?对我来说,它在升级到较新的依赖版本后才开始工作。你找到解决方案了吗?对我来说,它在升级到较新的依赖版本后才开始工作。