1
假設我有一個包含10個數字的ArrayList。雖然我通過從UI線程數組迭代,我發短信一樣:通過AsyncTask發送短信是否安全?
new smsAsyncTask().execute(new String[]{number,message});
public class smsAsyncTask extends AsyncTask <String,Void,Void>{
@Override
protected Void doInBackground(String... data) {
smsmanager.sendTextMessage(data[0], null, data[1], null, null);
return null;
}
什麼我不知道如果所有的短信之前,用戶按下返回按鈕已發送,將在AsyncTasks與活動會死嗎?我應該使用ui線程而不是使用AsyncTasks發送,我希望ui儘可能快地停留。
如果用戶退出承載'AsyncTask'的'Activity',那麼如果不清理properley(在'onPause())中,用於'doInBackground(...)'的線程可能會變成孤立的危險)'例如)。我可能會使用某種類型的Service(很可能是IntentService)而不是AsyncTask,或者直接由'Activity'託管的東西。 – Squonk 2012-02-04 23:06:39