android - 在 Fragment 中运行的服务

标签 android sqlite service multidimensional-array android-fragments

我有三个选项卡和三个 fragment 。我有一个服务在其中一个 fragment 中运行,服务正在从网络接收消息并更新 fragment ,因为该服务的广播接收器在 fragment 中。我想保留即使选择了特定选项卡,服务也一直在运行和更新 fragment 。当我在不停止服务的情况下更改选项卡时,我的应用程序崩溃了。 同样在 ActionBar.TabListener 的主要 Activity 中,我有 `

public void onTabUnselected(Tab tab, FragmentTransaction ft) {
                 ft.remove(fragment);
                //ft.hide(fragment);
            }

` 请帮助我如何实现这件事??

最佳答案

更改选项卡后,该 Fragment 将被销毁,该 fragment 的 View 也将被销毁。您将无法再更新该 Fragment

你应该处理不同的这个问题:

  1. 以某种方式缓存 Service 正在检索的任何内容,并且一旦创建了 Fragment 从缓存中获取最新数据并显示
  2. (类似)使用绑定(bind)的 Service,它会在您的 Fragment 创建后不断检索您的“数据”并将其存储在 Service 中,绑定(bind)到 Service 并检索该数据。

关于android - 在 Fragment 中运行的服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18654951/

相关文章:

android - 抽屉导航中的 Google Play 图书使用什么字体?

android - 如何在Android 1.5 上播放MP4 视频?

java - SQLite:java.sql.SQLException:结果集是TYPE_FORWARD_ONLY?

c# - 无法在sqlite数据库中插入可为空的值

android 将服务绑定(bind)到 Activity

eclipse - 在 Tomcat 上部署 GWT Starter 应用程序时调用 greetServlet 获取 ClassNotFound 异常

android - 程序包重命名后无法安装应用程序

java - 将变量传递给 findViewByID

java - 尝试将数据添加到数据库

java - 定期扫描用户位置并更新本地数据库的后台进程,即使在应用程序未打开时也是如此