MAUI Android - 上下文?

问题描述 投票:0回答:1

我正在将我的 Xamarin.Android 应用程序迁移到 MAUI。在另一个 SO 上,有人提到 PackageManager 需要被替换。所以我将代码更改为:

var component = new ComponentName(this, this.Class);
var activityInfo = PackageManager.GetActivityInfo(component, 0);
       

致:

var myCrrentActivity = MauiApplication.Current.GetActivity();
var component = new ComponentName(myCrrentActivity, myCrrentActivity.Class);

但是 MauiApplication.Current.GetActivity() 不起作用。当它到达下一行时它已为空。我尝试在不同的活动中应用此方法,但得到了相同的结果。

这是在我的 BaseActivity 中:

[Activity(Label = "BaseActivity")]
public class BaseActivity : AppCompatActivity, ISessionExpired, IPBottomNavBarIcon

我错过了什么?

xamarin.android maui
1个回答
0
投票

如果我理解正确并购买 Maui,您的意思是 .NET Maui 跨平台,那么要获取当前活动,您需要查看 ApplicationModel 的平台类

var currentActivity = Microsoft.Maui.ApplicationModel.Platform.CurrentActivity
© www.soinside.com 2019 - 2024. All rights reserved.