1
通常我有圖像選擇器代碼,並且我在代碼片段中有以下代碼,但是每當我運行數據時都會發送到服務器,但圖像不會發送。圖像的片段代碼上傳不起作用
private void startingCameraIntent() {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
// intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
startActivityForResult(intent, CAMERA_PIC_REQUEST);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
System.out.println("====onActivityResult");
if (requestCode == SELECT_PICTURE && resultCode == getActivity().RESULT_OK) {
selectedImageUri = data.getData();
String[] projection = {MediaStore.MediaColumns.DATA};
CursorLoader cursorLoader = new CursorLoader(getActivity(), selectedImageUri, projection, null, null,
null);
Cursor cursor = cursorLoader.loadInBackground();
int column_index = cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA);
cursor.moveToFirst();
filepath = cursor.getString(column_index);
System.out.println("file path is :----" + filepath);
System.out.println("file selectedImageUri :----" + selectedImageUri);
imageview_pic.setVisibility(View.VISIBLE);
Picasso.with(getActivity()).load(selectedImageUri).fit().into(imageview_pic);
} else if (requestCode == CAMERA_PIC_REQUEST && resultCode == getActivity().RESULT_OK) {
Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
thumbnail.compress(Bitmap.CompressFormat.PNG, 100, bytes);
// thumbnail.createScaledBitmap(thumbnail,1024,768,true);
File destination = new File(Environment.getExternalStorageDirectory(),
System.currentTimeMillis() + ".jpg");
FileOutputStream fo;
try {
destination.createNewFile();
fo = new FileOutputStream(destination);
fo.write(bytes.toByteArray());
fo.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// ivImage.setImageBitmap(thumbnail);
imageview_pic.setVisibility(View.VISIBLE);
System.out.println("===Image Path : " + destination);
System.out.println("===thumbnail : " + thumbnail);
filepath = String.valueOf(destination);
Log.d("Image path",filepath);
imageview_pic.setImageBitmap(thumbnail);
} else {
}
}
//----------------------------------------------------------------------------------------------------------
class postadd extends AsyncTask<String, String, JSONObject>
{
String title = ettitle.getText().toString();
String name = etname.getText().toString();
String city = etcity.getText().toString();
String district = text.getText().toString();
String taluka = text1.getText().toString();
String contact = etcontact.getText().toString();
String price = etprice.getText().toString() + "/" + item;
String details = etdetails.getText().toString();
// String img=selectedImageUri.getPath().toString();
JSONParser jsonParser = new JSONParser();
private static final String LOGIN_URL = "Image Upload URL";
private static final String TAG_SUCCESS = "success";
private static final String TAG_MESSAGE = "result";
@Override
protected void onPreExecute() {
pd.show();
}
@Override
protected JSONObject doInBackground(String... args) {
try {
HashMap<String, String> map = new HashMap<>();
map.put("file_upload",filepath);
map.put("add_title", title);
map.put("cat", cat_id);
map.put("sub_cat", finalsubcatid);
map.put("add_price", price);
map.put("add_description", details);
map.put("add_name", name);
map.put("add_phone", contact);
map.put("add_city", city);
map.put("add_district", district);
map.put("add_taluka", taluka);
Log.d("request", "starting");
JSONObject json = jsonParser.makeHttpRequest(
LOGIN_URL, "POST", map);
if (json != null) {
Log.d("JSON result", json.toString());
return json;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute(JSONObject json) {
if (pd != null && pd.isShowing())
{
pd.dismiss();
}
if (json != null) {
/* Toast.makeText(SignUp.this, json.toString(),
Toast.LENGTH_LONG).show();
*/
try {
// result = json.getInt(TAG_SUCCESS);
result = json.getString(TAG_MESSAGE);
} catch (JSONException e) {
e.printStackTrace();
}
}
if(result.equals("true"))
{
Toast.makeText(getActivity(),"Add Posted Successfull",Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(getActivity(),"Post Not Done...",Toast.LENGTH_SHORT).show();
}
}
}
上面的代碼中使用PostAddFragment從那裏相機目的是呼籲點擊,當後添加按鈕被擊中上傳圖像到服務器。
解碼它讓我的這改變了一個碼 –
是的,你必須進行此更改才能上傳.. –