我正在尝试为我的应用创建自己的共享菜单。为此,我需要加载可能选择的每个应用程序的图标和名称。我借助异步任务加载此信息。
但是我查看了5个应用程序的全部情况:
Executing Task 1
Task 1 Starts
Executing Task 2
Executing Task 3
Executing Task 4
Task 1 Ends
Task 2 Starts
Executing task 5
Task 2 Ends
Task 3 Starts
Task 3 Ends
Task 4 Starts
Task 4 Ends
Task 5 Starts
Task 5 Ends
这是相关的异步任务代码:
@Override
protected Void doInBackground(ResolveInfo... params) {
textToSet = String.valueOf(ttime) + params[0].loadLabel(context.getPackageManager());
imageToSet = params[0].loadIcon(context.getPackageManager());
return null;
}
asynctasks并不需要真正的结果,对吗?因此,应该有一种方法可以并行运行它们以更快地加载我的东西吗?还是loadIcon一次只能发生一次?
无论如何,如果有一种方法可以并行化它,那我该怎么办? RxJava有帮助吗?
答案 0 :(得分:0)
根据您的要求,您的应用程序中需要异步过程。
请使用RX Java。它将排序您的问题。您需要反应式编程。
https://www.androidhive.info/RxJava/android-getting-started-with-reactive-programming/
我希望本文能帮助您进一步了解rx-java。