在Visual Studio中,我创建了一个新的类库(Xamarin Forms):-
Xamarin类库
在这里,我添加了我的服务,并为启动服务提供了最基本的实现(注意 - 不是绑定服务。期望 - 在应用程序启动/停止时显示toast消息:-
在另一个项目中,我通过运行以下代码调用此服务:-
代码能够运行(我可以逐步执行它),但实际服务中的OnStartCommand方法未运行,而我希望它能够运行。有任何想法吗?
namespace AndroidBatteryService
{
public class AndroidBatteryService : Service
{
public AndroidBatteryService()
{
}
[return: GeneratedEnum]
public override StartCommandResult OnStartCommand(Intent intent, [GeneratedEnum] StartCommandFlags flags, int startId)
{
Toast.MakeText(this, "The Battery Service was just started", ToastLength.Long).Show();
return base.OnStartCommand(intent, flags, startId);
}
public override void OnCreate()
{
base.OnCreate();
}
public override void OnDestroy()
{
base.OnDestroy();
Toast.MakeText(this, "The Battery Service has been stopped", ToastLength.Long).Show();
}
public override IBinder OnBind(Intent intent)
{
//started service, NOT a binded service - return null...
return null;
}
}
}
在另一个项目中,我通过运行以下代码调用此服务:-
public void StartBatteryService()
{
Intent intent = new Intent(Android.App.Application.Context, typeof(AndroidBatteryService.AndroidBatteryService));
Android.App.Application.Context.StartService(intent);
}
代码能够运行(我可以逐步执行它),但实际服务中的OnStartCommand方法未运行,而我希望它能够运行。有任何想法吗?