Android中的MultiThread

时间:2012-07-05 08:05:54

标签: android multithreading

我是Android的新手,甚至是Java。 我必须使用另一个类“Utility”在活动中保存和阅读消息。它会导致ANR,我听说我必须在一个单独的线程中做那种事情 这是我的代码:

Utility.save(this, message, lsn);
Message tmp = Utility.read(this, lsn);

我试过这个:

final ProgressDialog progressDialog = ProgressDialog.show(
        this, "Please wait....", "Here your message");
new Thread(new Runnable() {
    public void run() {
    Utility.save(this, message, lsn);
    Message tmp = Utility.read(this, lsn);
        progressDialog.dismiss();
    }
}).start();

你可以想象,没有办法像这样。 我需要使用aidl吗?

谢谢你们。

2 个答案:

答案 0 :(得分:4)

你应该做的是使用AsyncTask这是应用程序中多线程的Android方式。

尝试在Android开发人员中阅读:http://android-developers.blogspot.co.il/2010/07/multithreading-for-performance.html

答案 1 :(得分:1)

不,Service(或IntentService)或AsyncTask可以正常完成工作,请考虑在http://developer.android.com了解更多信息