gpt4 book ai didi

java - 单个 Android 线程处理多个作业

转载 作者:行者123 更新时间:2023-12-01 05:30:35 24 4
gpt4 key购买 nike

我想要一个通过 HTTP 请求加载或保存数据的应用程序,但是数据必须与 UI 线程交互。理想情况下,我希望单个线程在消息上使用 IF 语句来确定请求是“加载”还是“保存”。

用最少的代码完成此任务的最简单方法是什么?

此外,处理程序的实例是否在单独的线程上运行?

编辑:这是我现在使用的代码:

Handler doStuff = new Handler(){
@Override
public void handleMessage(Message msg){
if(msg.what == 1){
// Load all the information.
// Get the ID from sharedPrefs
SharedPreferences details= getSharedPreferences("details", 0);
String ID = patDetails.getString("id", "error");
// Load up the ID from HTTP
String patInfo = httpInc.getURLContent("info.php?no="+AES.encrypt("387gk3hjbo8sgslksjho87s", ID));
// Separate all the details
patientInfo = patInfo.split("~");
}
if(msg.what == 2){
// Save the data
}
}
};

Eclipse 停止调试并显示 StrictMode.class“未找到源”

我想这是因为它使用主线程访问互联网,尽管它在单独的线程中运行。

任何想法。

最佳答案

Handlers确实在单独的线程上运行。检查该链接。您还应该查看AsyncTask .

关于java - 单个 Android 线程处理多个作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9048728/

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