我写了一个asynctask来处理json,json结果很长(需要40-70秒才能在2G上处理)。函数仅在获取并处理json之后执行(在postexecute()之前)。我如何更新每一秒。AsyncTask Android无法更新进度环
我refered:Android, java - Unable to update variable from asynctask
我写了一个asynctask来处理json,json结果很长(需要40-70秒才能在2G上处理)。函数仅在获取并处理json之后执行(在postexecute()之前)。我如何更新每一秒。AsyncTask Android无法更新进度环
我refered:Android, java - Unable to update variable from asynctask
使用AsyncHttpClient与您.gradle文件进度
过程中添加compile 'com.loopj.android:android-async-http:1.4.6'
现在创建一个服务类,并声明它你的androidmanifest.xml
下一页在onStartCommand在服务类:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.e(TAG, "onStartCommand");
try {
AsyncHttpClient client = new AsyncHttpClient();
client.setURLEncodingEnabled(true);
client.post(this, url, params, new AsyncHttpResponseHandler() {
@Override
public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
// you code here after the work is done
stopService();
}
@Override
public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
//your code here
stopService();
}
@Override
public void onProgress(int bytesWritten, int totalSize) {
super.onProgress(bytesWritten, totalSize);
Log.e("Progess", "" + (bytesWritten/totalSize) * 100 + "%");
}
});
} catch (FileNotFoundException e) {
e.printStackTrace();
}
return super.onStartCommand(intent, flags, startId);
}
,并从活动通话
startService(serviceIntent);
使用publishProgress
从doInBackground()
像
protected Void doInBackground(Integer... params)
{
publishProgress("Loading Questions... Please wait..."+per);
...
}
发布你的进步那是我所做的是int it? –