0

I'm new in android and I know how to post Strings using volley but now i want to send Strings with an Image! Now I selected an image from gallery but I can't post it

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == request && resultCode == RESULT_OK && data!= null){
        Uri uri = data.getData();
        try {
            bitmap= MediaStore.Images.Media.getBitmap(getContentResolver(),uri);
            img.setImageBitmap(bitmap);
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

void selectimg(){
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(intent,request);
}
Saneesh
  • 1,299
  • 12
  • 21
Sparky
  • 13
  • 2

1 Answers1

0

This is how you convert your image to a string

To POST the string from the converted image try to use this:

    public void postStringofImage() {
    String URL = "URL OF YOUR WEBSITE";
    RequestQueue queue = Volley.newRequestQueue(/* Your Context*/);
    StringRequest putRequest = new StringRequest(Request.Method.POST, URL,
            new Response.Listener<String>()
            {
                @Override
                public void onResponse(String response) {
                    // Handle response
                }
            },
            new Response.ErrorListener()
            {
                @Override
                public void onErrorResponse(VolleyError error) {
                    // Handle error
                }
            }
    ) {

        @Override
        protected Map<String, String> getParams() {
            Map<String, String>  params = new HashMap<String, String>();
            params.put("KEY OF YOUR IMAGE", "VALUE OF YOUR IMAGE FROM THE BASE64 ENCODING");
            return params;
        }


    };
    queue.add(putRequest);
}

Good luck!