本文主要是介绍Xamarin.Andrid 服务,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
internal class ServiceTest : Service{// 在真实的使用中,Service来还包含一个OnBind方法,并且必须要使用该方法,但是只要返回NULL即可,//除非当前服务是一个绑定服务,那么就要返回实现了IBinder的实例。public override IBinder OnBind(Intent intent){return null;}//创建服务,只会在服务第一次创建时调用public override void OnCreate(){base.OnCreate();Log.Debug("xamarin", "创建服务");}//每一次启动服务都会调用该方法public override StartCommandResult OnStartCommand(Intent intent, StartCommandFlags flags, int startId){Log.Debug("xamarin", "启动服务");return StartCommandResult.Sticky;}//主要用于释放资源public override void OnDestroy(){base.OnDestroy();Log.Debug("xamarin", "关闭服务");}}
服务和Android Activity是同级别的,并不是单独的进程
和上面三以及Content provider并称为Android 四大件。服务和Activity一样,有自己的生命周期,只是没有界面,其也是运行在主线程里面的,所以当有耗时的操作时,一定要另开一个线程来完成这个操作。不然就会卡死。
Service与Intentservice
Service与Intent service的区别就是Intent service里面可以有耗时的操作,它是另起一个线程
Service与bindingService
服务从创建到销毁,有两种方式,一为start service ,其二是bind service,两者都要
但是呢,其调用的方法不一样
就是说binding service比start service多了一个解除bind的过程
当所有的与服务的连接都被unbind时,服务就被销毁了
这篇关于Xamarin.Andrid 服务的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!