android - 执行后台任务的最佳方法是什么?
问题描述
我正在学习 Android (Java),在此之前我使用AsyncTask
.
public class SuaClasse extends AsyncTask<String,Integer,Integer>{
@Override
protected void onPreExecute(){
//Codigo
}
@Override
protected Integer doInBackground(String... params) {
//Codigo
}
@Override
protected void onPostExecute(Integer numero){
//Codigo
}
protected void onProgressUpdate(Integer… params){
//Codigo
}
}
我最近读到这可能不是最好的方法,而且AsyncTask
很快就会过时……一些关于RxJava
已被引用的内容。
真的吗?
我想知道执行后台任务的方法是什么,每种方法的细节是什么,如果有的话,最好的方法是什么。
解决方案
您可以Background Services
使用WorkManager
. 这是 android 的一部分JetPack
。在Official Document-best-background上探索更多
AsyncTask
并不适合所有情况。
Rx
概念 i 专门用于管理事件流。
如果您只需要处理后台任务。Rx
那么不推荐使用。为此,请使用 Android 内置的最新功能。
注意:也请查看 RX 的官方文档。
推荐阅读
- r - Сustomize R 在子图中绘制颜色
- c# - 如何创建预制件并指定下降率
- java - 我可以在不使用静态变量或方法的情况下在两个 JFrame 之间进行通信吗?
- python - Python - 程序未接收输入
- javascript - Pretiier 自动保存失败,出现 SyntaxError: Unexpected token *
- python - 即使有一个路径,A* 路径查找算法有时也找不到路径(Python)
- python - 将 tensorflow 对象转换为本地驱动器上的 jpeg
- java - 在 Spring Boot App 中使用 Redis Stream 通过 HTTP 长轮询来阻止 HTTP 响应
- asp.net-core - 如何使用 DI 系统返回部分视图并调用模型的构造函数
- python - 使用 pypy3 或 python 运行不同的脚本