如何使用凌空显示进度条的百分比?

时间:2017-10-25 07:11:56

标签: android android-volley android-progressbar

在我的应用程序中,我正在将图像和文本响应上传到我的服务器。我想在上传时显示包含百分比的进度对话框。 这是我的代码, 代码调用齐射功能:

//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);
    }

1 个答案:

答案 0 :(得分:0)

  

我想显示一个进度对话框 - 可能

     

上传时的百分比 - 不可能。这是由大块数据上传的一部分。还需要Api支持。

     

想一下上传的10 MB文件,你设置5个线程,上传2 mb。因此上传2个线程的成功发生了40%。它的工作原理就是这样。