C# 未调用OnStartCommand/OnCreate

C# 未调用OnStartCommand/OnCreate,c#,xamarin.android,visual-studio-2017,C#,Xamarin.android,Visual Studio 2017,我创建了一个在前台服务中运行Signaler的服务。当我启动服务时,没有收到任何错误,但从未调用OnCreate和OnStartCommand。是的,我检查了舱单上的前台服务。我用于启动服务的代码是: public void StartForegroundServiceComapt<SignalRSrv>(Context context, Bundle args = null) where SignalRSrv : Service { var inte

我创建了一个在前台服务中运行Signaler的服务。当我启动服务时,没有收到任何错误,但从未调用OnCreate和OnStartCommand。是的,我检查了舱单上的前台服务。我用于启动服务的代码是:

    public void StartForegroundServiceComapt<SignalRSrv>(Context context, Bundle args = null) where SignalRSrv : Service
    {
        var intent = new Intent(context, typeof(SignalRSrv));
        if (args != null)
        {
            intent.PutExtras(args);
        }

        if (Android.OS.Build.VERSION.SdkInt >= Android.OS.BuildVersionCodes.O)
        {
            context.StartForegroundService(intent);
        }
        else
        {
            context.StartService(intent);
        }
    }

我在调试器中设置了断点,它们永远不会被命中。
RegisterForegroundService()
中设置的图标从未显示过(这并不奇怪,因为该服务没有实例化)。

好吧,这是一个简单的答案(它们不都是吗?)。我将
[Service]
添加到服务类的顶部,即

[Service]
public class SignalRSrv : Service
{
   ..... all my other stuff .....
}
它现在按预期点击OnCreate和onStart命令。
没有理由怀疑我为什么喝酒……

嗨,在代码运行之前你是什么意思?信号器代码经过独立测试,运行良好。现在我想将其作为服务运行。好的,您是否在服务的OnCreate()中设置断点,并检查它是否可以工作。我设置了断点,但它们从未命中。
[Service]
public class SignalRSrv : Service
{
   ..... all my other stuff .....
}