一般比较耗时间的操作不能放在主线程中,因为这样会引起卡顿现象,所以一般会新建一个子线程,然后在子线程中进行比较耗时间的操作,等到子线程结束时,会把子线程的结果传回主线程中,需要更新的话就由主线程自己更新,这就是所谓的异步操作吧。
另外,Handler其实相当于多个线程之间的通信吧,可以发送和接收不同线程之间的消息。详情请点击链接:
新建线程:
new Thread(new Runnable() {
public void run(){
...
...
}
}).start();
储存文件到SD卡:
File file = Environment.getExternalStorageDirectory();//获取SD卡目录
File new_file = new File(file, "bd_logo1.png");//创建新文件
FileOutputStream outputStream = new FileOutputStream(new_file);
outputStream.write(result, 0, result.length);//利用文件输出流写入文件到SD卡