【发布时间】:2021-08-30 16:45:52
【问题描述】:
我正在使用 Xamarin Forms 构建一个 Home Launcher 应用,类似于 Niagara Launcher。
根据这篇文章,为了使我的应用实际上表现得像一个启动器应用,我想将所需的意图过滤器添加到我的 android 项目中的 mainactivity.cs:
https://forums.xamarin.com/discussion/21961/creating-an-android-launcher-home-screen-using-xamarin
让它看起来像这样:
namespace Launcher.Droid
{
[Activity(Label = "Launcher", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize)]
[IntentFilter(new[] { Intent.ActionMain }, Categories = new[] { Intent.CategoryHome, Intent.CategoryDefault })]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
Xamarin.Essentials.Platform.Init(this, savedInstanceState);
global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
LoadApplication(new App());
}
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
{
Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
}
}
}
对于每个 Intent 过滤器,我都会收到一个错误提示
- 不能使用实例引用访问静态成员“member”;改为使用类型名称来限定它
和
- 不能使用实例引用访问静态成员“member”;改为使用类型名称对其进行限定。
我是 Xamarin 的新手,很高兴能提示/指导我做错了什么。谢谢各位
【问题讨论】:
-
你有哪些用途?如果您只是为了好玩而将
Intent.*字段替换为字符串会发生什么?它还抱怨吗?
标签: android .net xamarin xamarin.forms xamarin.android