2016-05-25 8 views
-2

私は答えを検索しようとしましたが、完全な答えはありません。 コードはギャラリーから画像を選択し、サーバーデータベースにアップロードする予定です。NameValuePairとhttpParamsは廃止されましたが、解決方法は?

コードに2つのエラーがあります。 1のNameValuePair 2. HttpParams

これは、私はアンドロイドのVolleyをしようとするあなたを示唆している私のコード

@Override 
     protected Void doInBackground(Void...params){ 
      ByteArrayOutputStream byteArrayOutputStream=new ByteArrayOutputStream(); 
      image.compress(Bitmap.CompressFormat.JPEG,100,byteArrayOutputStream); 
      String encodedImage= Base64.encodeToString(byteArrayOutputStream.toByteArray(),Base64.DEFAULT); 

      ArrayList <NameValuePair> dataToSend=new ArrayList<>(); 
      dataToSend.add(new BasicNameValuePair("image",encodedImage)); 
      dataToSend.add(new BasicNameValuePair("name",name)); 

      HttpParams httpRequestParams=getHttpRequestParams() ; 

      HttpClient client=new DefaultHttpClient(httpRequestParams); 
      HttpPost post=new HttpPost(); 
      return null; 
     } 

     @Override 
     protected void onPostExecute(Void aVoid){ 
      super.onPostExecute(aVoid); 
     } 
    } 

    private HttpParams getHttpRequestParams(){ 
     HttpParams httpRequestParams=new BasicHttpParams(); 
     HttpConnectionParams.setConnectionTimeout(httpRequestParams,100*30); 
     HttpConnectionParams.setSoTimeout(httpRequestParams,1000*30); 
     return httpRequestParams; 

    } 
+0

使用volley。 https://developer.android.com/training/volley/index.html – Sayem

答えて

1

です。私はあなたにサンプルコードを示します。他のサンプルもインターネットで検索できます。それで遊びます。

RequestQueue queue = Volley.newRequestQueue(Activity.this); 
    StringRequest sr = new StringRequest(Request.Method.POST, url, 
      new Response.Listener<String>() { 
       @Override 
       public void onResponse(String s) { 
        int success; 
        try { 
         JSONObject object = new JSONObject(s.toString()); 
         success = object.getInt("success"); 
         Log.wtf("success", String.valueOf(success)); 
         Log.wtf("message", object.getString("message")); 
         if(success==1){ 
          //do something here 
         }else{ 
          //do something here 
         } 
        }catch (Exception e){ 
         e.printStackTrace(); 
        } 

       } 
      }, new Response.ErrorListener(){ 
     @Override 
     public void onErrorResponse(VolleyError volleyError) { 
      volleyError.printStackTrace(); 
     } 
    }){ 
     @Override 
     protected Map<String, String> getParams() throws AuthFailureError { 
      Map<String,String> params = new HashMap<String, String>(); 
      params.put("id", id); 
      return params; 
     } 
    };queue.add(sr); 
関連する問題