社区
Java
帖子详情
android关于activity与service绑定问题
gxx1991
2011-09-24 04:13:46
一个service是否能够绑定多个activity(前提是在这个service没有被销毁重新创建)?
某个特定的activity与service绑定后,当该activity进入onPause()方法时,service是什么状态???
求高手指教
...全文
1174
5
打赏
收藏
android关于activity与service绑定问题
一个service是否能够绑定多个activity(前提是在这个service没有被销毁重新创建)? 某个特定的activity与service绑定后,当该activity进入onPause()方法时,service是什么状态??? 求高手指教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
idleone
2011-11-28
打赏
举报
回复
我现在也是这个疑问,决定自己实验一下。
凌风雪雕
2011-09-24
打赏
举报
回复
不知道 帮顶
gxx1991
2011-09-24
打赏
举报
回复
非常感谢楼上两位的回复,但是我想知道一个service是否能与多个activity绑定呢?
lezai001
2011-09-24
打赏
举报
回复
Activity生命周期之我见
关于Activity生命周期的文章很多,而且大部分也说得很详细,所以作为关于这方面的内容我本来不想多说,但是大家可能跟我之前一样,在看这方面的内容的时候都能很容易地看懂,但是过几天又忘了,或者在用的程序中跳转较多的情况下容易混淆。
这是因为没有真正的理解,或者是没有很好的方法来记忆,所以在这里我就说一下我对Activity生命周期的一些记忆的方式,希望对大家能够有所帮助。
Activity生命周期的基本内容我就不多说了,网上一搜一大把,官方文档也说得很详细。总之,我们知道Activity从创建到销毁有多种状态,从一种状态到另一种状态时会激发相应的回调方法,这些回调方法包括:
onCreate 、onStart 、onResume 、onPause 、onStop 、onDestroy 、onRestart
下面这张图就是我的记忆的方式:
不难看出,其实这些方法都是两两对应的,onCreate创建与onDestroy销毁;onStart可见与onStop不可见;onResume可编辑(即焦点)与onPause;这6个方法是相对应的,那么就只剩下一个onRestart方法了,这个方法在什么时候调用呢?答案就是:在Activity被onStop后,但是没有被onDestroy,在再次启动此Activity时就调用onRestart(而不再调用onCreate)方法;如果被onDestroy了,则是调用onCreate方法。
这样大家就应该能够很容易的记住这些方法了。下面再通过一个比喻来看两个Activity的切换过程。
我们把Activity比作一本书,我们要看书,首先从书架上取出书(onCreate),然后放到桌上(onStart),接着打开书(onResume),这样我们就可以看书并可以在书本上写字了。
如果这时候我们要启动另一个Activity,也就是要看另一本书,首先我们放下手中的笔或者说合上书(onPause),然后从书架上拿下另一本书(书2:onCreate),然后把书本2放到桌上并打开(书2:onStart、onResume)。
如果书本1被书本2完全盖住了,即不可见了,就调用书本1的onStop;而如果书本2较小,没有完全盖住书本1,则不会调用。
我们还可以把书本1放回书架上,即onDestroy。
另外,还有一点要注意,Activity在处于onPause、onStop、onDestroy状态下,系统都可以销毁该Activity所在进程,所以我们在处理一些要保存的数据时,必须在onPause方法中进行,因为onStop和onDestroy方法不一定会被调用。
OK,就说这么多……
完美灬缺陷
2011-09-24
打赏
举报
回复
Service的生命周期只有onCreate,onStart,onDestroy,.
1)通过startService启动:开始(onCreate -> onStart)过程,Service停止的时候直接进入销毁过程(onDestory).如果调用者(Activity)自己退出而没用调用stopService(),刚service会一直运行下去,直到下次调用者(Activity)再启动起来,并确调用stopService();
2)通过bindService启动,只会运行onCreate,这时将调用者(Activity)与service绑定在一起,如果调用者(Activity)退出,service就会调用onUnbind -> onDestroy.
activity进入onPause(),activity并没有退出。service依然会运行吧。
实现
Activity
和
Service
通信的几种方案
本文介绍了
Android
中
Service
与
Activity
的通信方式,包括
Activity
绑定
Service
调用方法、
Service
向
Activity
发送消息、跨进程通信和
Service
在前台弹出Dialog的场景。详细讲解了各种通信机制及其应用场景,提供了解决不确定当前
Activity
时
Service
如何弹出Dialog的
问题
。
Android
:
Service
(二)——以
绑定
方式启动
Service
本文深入探讨了
Android
中
Service
的线程
问题
及
绑定
Service
的机制,详细阐述了如何在
Activity
中通过
绑定
Service
来操作
Service
内的方法,以及如何在
Activity
销毁后正确解绑
Service
并确保
Service
的生命周期管理。
Tabhost中
Activity
绑定
Service
本文解决了
Android
中TabHost无法
绑定
Service
的
问题
。当一个
Activity
属于TabHost时,直接调用bind
Service
会失败。正确的做法是在
Activity
的onCreate方法中使用getApplicationContext().bind
Service
来
绑定
Service
。
安卓学习笔记整理
这篇笔记涵盖了安卓开发的基础知识,包括
Activity
的四种启动模式、scheme协议的使用、
Service
的启动与
绑定
方式,以及BroadcastReceiver在应用程序间通信的角色。还讨论了Binder作为进程间通信的重要机制,介绍了
Android
多线程实现、内存泄露
问题
以及
Service
执行耗时操作的注意事项。此外,详细阐述了
Android
应用从启动到运行的过程,以及打包和安装的步骤。最后,提到了
Android
Studio中全屏显示图片的方法、match_parent与wrap_content的区别,以及字体单位的选择。
Activity
在onCreate方法
绑定
服务,自定义的
Service
返回的是一个null值
在
Android
应用中,
Activity
在onCreate方法尝试
绑定
自定义
Service
时遇到
问题
,通过回调获取的
Service
实例为null。然而,通过Log观察发现on
Service
Connected方法中返回的
Service
却是非空。将
绑定
服务的代码移至on
Service
Connected方法后,
问题
解决。文章作者寻求对此现象的解析。
Java
51,409
社区成员
86,085
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章