2017-10-25 14 views
2

내 응용 프로그램에서 내 서버에 이미지 및 텍스트 응답을 업로드합니다. 업로드하는 동안 진행률 대화 상자를 표시하고 싶습니다. 다음은 발리 함수를 호출하려면 코드, 코드 : 서버에 데이터를 전송하는 코드에발리를 사용하여 진행률 막대를 백분율로 표시하는 방법은 무엇입니까?

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

답변

0
내가 진행 대화 상자를 표시 할

- 가능한

업로드하는 동안 비율로 - 불가능합니다. 이것은 데이터 덩어리에 의한 멀티 파트 업로드입니다. Api 지원도 필요합니다.

10 메가 바이트 파일을 업로드한다고 생각하면 2 메가 바이트를 업로드하는 5 개의 스레드를 설정하십시오. 따라서 2 개의 스레드를 성공적으로 업로드하면 40 %가 완료됩니다. 그것은 그렇게 작동합니다.

+1

어떻게 달성할까요? – Sidhartha

+1

다중 부품 양식 데이터로 작업하고 있습니까? 1> https://stackoverflow.com/questions/37790427/show-progress-value-for-volley-file-download 2> https://stackoverflow.com/questions/35076978/how-to-show-progress -bar-while-uploading-with-percentage – InsaneCat