在我的应用程序中,我正在将图像和文本响应上载到我的服务器。我想在上传时显示一个带有百分比的进度对话框。
这是我的密码,
调用截击函数的代码:

//look at send data to server

// Send to server .calling my volley function

    new NetworkController(context).sendAuditData(row, URL_Config.SAVE_AUDIT);

我的截击代码发送数据到服务器,
public void sendAuditData(final HashMap<String,String> audit_data,final String url)
    {

//        HttpsTrustManager.allowAllSSL();
        createProgressDialog();
        StringRequest stringRequest = new StringRequest(Request.Method.POST, url,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        String val[] = response.split(",");
                        if(val[0].equalsIgnoreCase("success")){
                            Toast.makeText(context,"Data submitted successly",Toast.LENGTH_SHORT).show();

                            CheckSuiteDAOI dao = new CheckSuiteDAO(context);
                            ContentValues cv = new ContentValues();
                            cv.put("sync_status","true");
                            dao.update_data(cv,"date_time=?",new String[] {val[1]},"CONTAINER_MASTER");

                            successDialog(audit_data);

                        }

                    }
                },
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        dismisProgressDialog();
                    }
                }){
            @Override
            protected Map<String,String> getParams(){

                return audit_data;
            }

        };

        RequestQueue requestQueue = Volley.newRequestQueue(context);
        int socketTimeout         = 5000;//7seconds - change to what you want
        RetryPolicy policy        = new DefaultRetryPolicy(socketTimeout, DefaultRetryPolicy.DEFAULT_MAX_RETRIES, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
        stringRequest.setRetryPolicy(policy);
        requestQueue.add(stringRequest);
    }

最佳答案

我想显示一个进度对话框--可能
上传时使用百分比--不可能。这是由数据块进行的多部分上传。还需要API支持。
想想10MB文件你的上传,你设置了5个线程,上传了2MB。所以上传2个线程成功40%完成。它就是这样工作的。

07-24 09:48