gpt4 book ai didi

android - 允许 AsyncTask 操作不同 Activity 类中的值

转载 作者:行者123 更新时间:2023-11-29 18:21:50 26 4
gpt4 key购买 nike

这个标题可能看起来很奇怪,所以让我试着解释一下我想做什么。我有几个 Activity 类,每个类代表我的应用程序中的不同 View 。我的初始 Activity 类在应用程序启动时加载。用户输入值并最终打开 TCP 套接字,然后我使用 AsyncTask 来监听和响应来自服务器的消息。我希望这个 AsyncTask 类能够在应用程序关闭/达到错误条件之前进行监听,并且能够在其他 Activity 类启动后更新它们的值。这有意义吗(这是一个漫长而令人沮丧的夜晚)?我知道静态 Activity 类引用是不好的做法,接触其他 Activity 的 UI 线程也不好,但我无法找到解决此问题的干净方法。也许在这里使用 AsyncTask 不是最好的方法?我应该改用服务还是完全使用其他东西?

提前致谢。

最佳答案

The user enters values and eventually a TCP socket is opened, and I then use AsyncTask to listen for and respond to messages from the server.

AsyncTask 专为短期操作(例如,闪存读取、闪存写入、Web 服务调用)而设计。使用您自己的后台线程进行无限长的操作。

I'd like for this AsyncTask class to essentially listen until the app is closed/error condition reached

Android 中没有“app is closed”的概念,Web 上也没有“app is closed”的概念。

and be able to update values in other activity classes after they are started.

这听起来像是一项服务工作,而不仅仅是一些随机线程或 AsyncTask。对于初学者来说,一旦启动后台线程或 AsyncTask 的原始 Activity 被销毁,您就必须摆脱后台线程或 AsyncTask

Should I be using a service instead or something else entirely?

我强烈建议您查看服务。

关于android - 允许 AsyncTask 操作不同 Activity 类中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4976903/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com