我正在使用具有 HTS 感的 HTC Hero。
我的经验是有时 AsyncTask 不会在 execute() 上运行 doInBackground 方法;
它只出现在我的英雄身上。有人遇到过同样的问题吗?
/ 马丁
我正在使用具有 HTS 感的 HTC Hero。
我的经验是有时 AsyncTask 不会在 execute() 上运行 doInBackground 方法;
它只出现在我的英雄身上。有人遇到过同样的问题吗?
/ 马丁
不是这个问题,但在为 HTC Hero 开发时,我遇到了几个在任何普通版本的 Android 中都没有发现的错误。
也就是说,当从 HTC Sense 拨号器拨打电话时,不会发送去电意图,这是最新的 HTC Hero 版本,而不是早期版本。
并且电话图标出现在最近使用的应用程序屏幕中,旁边是一个拨号器图标,按下时(拨号器图标)会导致严重问题。
与您的错误联系 HTC 并向他们提供日志,我已经解决了我发现的错误。
这是将近 2 周前的事了,不过我没有任何反馈
您应该做的是将 @Override 标志添加到 doInBackground(Void... params){}; 函数以确保它实际上覆盖了默认函数。
像:
@Override
public Void doInBackground(String... params) {
// Do something
}
一个重要的旁注是将函数的参数类与类定义中定义的参数类匹配。
public class FetcherManager extends AsyncTask<Url, Integer, Long>{};
@Override
public Long doInBackground(Url... params) {
// Do things
};
@Override
protected void onProgressUpdate(Integer... progress) {
// Do things
}
@Override
protected void onPostExecute(Long result) {
// Do things
}