android service无法启动

在manifest注册的时候加了process属性,然后就无法启动了,测试过,去掉就可以正常启动的,求助

3个回答

设置了process=":remote"或者指定名,其service会作为一个独立的进程运行,service默认的进程名字也会相应改变。uid是相对于应用而言的。安卓中默认只有相同进程才可以共享数据。如果你要启动不同进程的程序,就不能以简单的startService(intent)来启动了,而是应该用binder来传递这个service,也就是bindService启动。好像记得,不同应用之间要用隐式启动的。改menifest根节点的sharedUid配置适用于在不同应用间共享数据。activity还有个taskaffinity,service可以配置exported为true图片说明

写了process就换了进程了

process 属性写了后,在启动的时候,service实在不同的进程,不同的pid下,可能是你其他配置限制了。

mengjiangyue
梦江月 回复白萝卜blb: 设置了process=":remote"或者指定名,其service会作为一个独立的进程运行,service默认的进程名字也会相应改变。uid是相对于应用而言的。安卓中默认只有相同进程才可以共享数据。如果你要启动不同进程的程序,就不能以简单的startService(intent)来启动了,而是应该用binder来传递这个service,也就是bindService启动。好像记得,不同应用之间要用隐式启动的![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/24.gif)改menifest根节点的sharedUid配置适用于在不同应用间共享数据。activity还有个taskaffinity,service有个exported可以配置true
大约 3 年之前 回复
mengjiangyue
梦江月 回复白萝卜blb: 设置了process=":remote"或者指定名,其service会作为一个独立的进程运行,service默认的进程名字也会相应改变。uid是相对于应用而言的。安卓中默认只有相同进程才可以共享数据。如果你要启动不同进程的程序,就不能以简单的startService(intent)来启动了,而是应该用binder来传递这个service,也就是bindService启动。好像记得,不同应用之间要用隐式启动的![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/24.gif)改menifest根节点的sharedUid配置适用于在不同应用间共享数据。activity还有个taskaffinity,service有个exported可以配置true
大约 3 年之前 回复
weixin_39964621
weixin_39964621 那我怎样才能知道服务已经启动了呢?打log?
大约 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐