带线程的Android显示错误
在应用程序中,我调用了alerdialog click侦听器中的线程。 它显示了移动三星pro中的错误“强制关闭应用程序”。带线程的Android显示错误,android,thread-safety,Android,Thread Safety,在应用程序中,我调用了alerdialog click侦听器中的线程。 它显示了移动三星pro中的错误“强制关闭应用程序”。 但是当我在另一个应用程序中执行相同的代码时,代码就会正常工作…这可能是因为您在alerdialog click侦听器中做了一些错误的事情。把你做错的事情做对,它就不会显示错误。在你的应用程序中执行以下步骤帮助 Android还提供了一种称为AsyncTask的东西,专门设计用于在单独的线程上运行一些东西,以及在UI线程上运行一些东西。这会自动使用Android的线程池,如
但是当我在另一个应用程序中执行相同的代码时,代码就会正常工作…这可能是因为您在alerdialog click侦听器中做了一些错误的事情。把你做错的事情做对,它就不会显示错误。在你的应用程序中执行以下步骤帮助 Android还提供了一种称为AsyncTask的东西,专门设计用于在单独的线程上运行一些东西,以及在UI线程上运行一些东西。这会自动使用Android的线程池,如果您没有任何理由使用明确的单独线程,这是一种简单、干净的方法:
private class DownloadFilesTask extends AsyncTask<URL, Integer, Long> {
// Runs on a ThreadPool thread
protected Long doInBackground(URL... urls) {
int count = urls.length;
long totalSize = 0;
for (int i = 0; i < count; i++) {
totalSize += Downloader.downloadFile(urls[i]);
// Sends data to onProgressUpdate to run on the UI thread
publishProgress((int) ((i / (float) count) * 100));
}
return totalSize;
}
// Runs on the UI thread!
protected void onProgressUpdate(Integer... progress) {
setProgressPercent(progress[0]);
}
// Runs on the UI thread!
protected void onPostExecute(Long result) {
showDialog("Downloaded " + result + " bytes");
}
}
私有类下载文件任务扩展异步任务{
//在线程池线程上运行
受保护的长doInBackground(URL…URL){
int count=url.length;
长totalSize=0;
对于(int i=0;i
将您的日志粘贴到此处,以使其更加清晰。-1 8小时后,仍然没有代码可供查询,答案也没有注释