从c#代码运行Android活动(我在Monogame中使用Xamarin)

从c#代码运行Android活动(我在Monogame中使用Xamarin),c#,android,android-activity,xamarin,monogame,C#,Android,Android Activity,Xamarin,Monogame,我在Monogame中使用Xamarin,我需要从c#代码运行android活动。我尝试这样做: public class Test : Activity { public void Start() { StartActivity(typeof(MyActivity)); } } } 然后从Update()调用Start() 但我有错误。 请帮帮我一个现有的活动实例在构建时会在幕后进行一些工作;通过intent系统启动的活动(所有活动)在实例化时将添加一个上下文引用。此上下文引用用

我在Monogame中使用Xamarin,我需要从c#代码运行android活动。我尝试这样做:

public class Test : Activity

{

public void Start()
{
  StartActivity(typeof(MyActivity));
}

}

}
然后从Update()调用Start()

但我有错误。
请帮帮我

一个现有的
活动
实例在构建时会在幕后进行一些工作;通过intent系统启动的活动(所有活动)在实例化时将添加一个
上下文
引用。此上下文引用用于
StartActivity
的调用链中

因此,在
Test
活动实例上调用
StartActivity
后看到的
Java.Lang.NullPointerException
是因为该实例中的
上下文从未设置过。通过使用
new
操作符创建活动实例,您绕过了活动实例化的正常方式,使实例处于无效状态

这可以通过使用全局应用程序上下文来启动活动来解决:

var intent = new Intent(Android.App.Application.Context, typeof(Test));
intent.SetFlags(ActivityFlags.NewTask);
Android.App.Application.Context.StartActivity (intent);

发布您收到的完整错误消息。可能重复感谢。我认为这是不可能的
var intent = new Intent(Android.App.Application.Context, typeof(Test));
intent.SetFlags(ActivityFlags.NewTask);
Android.App.Application.Context.StartActivity (intent);