我想在将对象发送到服务器时放置进度条。但是我不知道我需要在doInBackground()方法中编写什么代码以及在onProgressUpdate()中编写什么代码 。
这里使用Client Socket程序将Object发送到Server。
代码(内部类):
class DownloadFileAsync extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
dialog = new ProgressDialog(this);
dialog.setMessage("Uploading...");
dialog.setIndeterminate(false);
dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
dialog.setProgress(0);
dialog.show();
}
@Override
protected String doInBackground(String... aurl) {
}
@Override
protected void onProgressUpdate(String... progress) {
}
@Override
protected void onPostExecute(String unused) {
}
}
所以,这里我需要在doInBackground()和onProgressUpdate()中写
我有一个对象serverObject我需要发送到服务器。
目前我正在使用以下代码将对象发送到服务器而没有任何进度条:
Socket s = new Socket("xxx.xx.xx.xxx", xxx);
//to send object to the server
ObjectOutputStream oos = new ObjectOutputStream(s.getOutputStream());
oos.writeObject(serverObject);
oos.flush();
if (s != null) {s.close();}
if (oos != null) {oos.close();}
我如何将此代码写入doInBackground()方法并跟踪发送的数据百分比。
如何获取对象的大小。在很多网站中,他们提到了文件的大小。但就我而言,这是一个对象。
还有一件事要执行,我需要写:
new DownloadFileAsync().execute(params);
那么我如何得到这个参数。