在Android中,處理線程中的異常主要有以下幾種方法:
new Thread(new Runnable() {
@Override
public void run() {
try {
// 可能拋出異常的代碼
} catch (Exception e) {
// 處理異常
}
}
}).start();
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// 可能拋出異常的代碼
}
});
thread.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread t, Throwable e) {
// 處理未捕獲的異常
}
});
thread.start();
private class MyAsyncTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
// 可能拋出異常的代碼
return null;
}
@Override
protected void onPostExecute(Void result) {
// 在主線程更新UI
}
}
new MyAsyncTask().execute();
請注意,在使用AsyncTask時,異常會被捕獲并傳遞給onPostExecute方法,因此你可以在該方法中處理異常。