我是靠谱客的博主 自由乐曲,最近开发中收集的这篇文章主要介绍android服务的bindService/startService,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1,高版本android已经不允许只通过action来bindService/startService,可以通过:

intent.setPackage("XXXX");

来指定服务的applicationID,注意这里并不是包名。所以,即是在两个应用中都存在同样包名、同样action的服务,也不会出现不知道绑定/启动哪一个服务的情况

测试代码:

https://github.com/zackLangChina/android

 

2,AOSP android8.0和9.0中测试可以通过bindService/startService把服务进程拉起来。但是在搭载android9.0的三星S8+真机测试中发现,无法通过bindService/startService把服务进程拉起来,只有在服务进程已经存在的情况下,才能通过bindService获取到服务端的binder proxy。怀疑是三星对此作了限制,避免一个应用启动后拉起一堆其他服务的情况(流氓软件常见做法)

 

3,在已bindService的情况下,kill掉服务进程,服务进程会自动重新启动,再次被bind上,跑进onServiceConnected。

 

4,bindService后unbindService,服务端会跑进onUnbind和onDestroy,但服务进程并没有被销毁

转载于:https://www.cnblogs.com/wolflzc/p/10996890.html

最后

以上就是自由乐曲为你收集整理的android服务的bindService/startService的全部内容,希望文章能够帮你解决android服务的bindService/startService所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(31)

评论列表共有 0 条评论

立即
投稿
返回
顶部