androdi загрузить растровое изображение на сервер С# с устройства

У меня есть растровое изображение или назовем его файлом, который я хочу загрузить на свой сервер С#, это растровое изображение (файл) захватывается камерой и сохраняется на SD-карте, но я понятия не имею, как именно я должен отправить его на свой С# сервер. Я точно не знаю, что я должен отправить в своем запросе и каким должен быть параметр моей серверной функции для получения файла. Любая помощь будет оценена по достоинству.

Я нашел это, который показывает, как отправить файл на сервер, но он использует кодирование на стороне сервера php, поэтому я не мог полностью понять процесс.

Я не прошу код или что-то еще, просто указание или объяснение, чтобы я понял концепцию. заранее спасибо


person arash moeen    schedule 13.03.2015    source источник
comment
Вы говорите о растровом изображении. Я почти уверен, что это означает две разные вещи для Android и .Net. Вам, вероятно, придется выбрать какой-то промежуточный формат, например изображение файла .png.   -  person RenniePet    schedule 13.03.2015
comment
@RenniePet Вы правы, по умолчанию изображение, снятое пользователем, сохраняется в виде файла .jpg. Я изменил растровое изображение на файл. Спасибо за исправление   -  person arash moeen    schedule 13.03.2015


Ответы (3)


Вам нужно сделать следующее

  1. Создайте вызов API, который примет файл и сохранит этот файл где-нибудь на сервере.
  2. Вам нужно загрузить изображение на сервер с помощью вызова API, передав в него файл изображения

Пример загрузки изображения на сервер https://stackoverflow.com/questions/4126625/how-to-send-a-file-in-android-from-mobile-to-server-using-http

См. это для загрузки с индикатором выполнения

person Fahim    schedule 13.03.2015
comment
Спасибо, Фахим, я проверю ссылку, которую вы разместили. Так что на моем сервере я буду иметь дело с ним как с обычным закачанным файлом, сколько там закачанного например из файла ввода в html? - person arash moeen; 13.03.2015
comment
Фахим, используя предоставленную вами ссылку, кажется, что она будет работать отлично, но также возможно ли изменить ее, чтобы фактически отслеживать ход загрузки? - person arash moeen; 13.03.2015

Не нужно загружать изображения, просто преобразуйте изображение в Base64, а затем загрузите эту строку в определенное поле.

Вы можете легко загружать и получать изображения.

person Kashif Ahmed    schedule 11.06.2018

Прежде чем отправлять его на сервер, преобразуйте растровое изображение в строку и отправьте его с помощью API. и поле db должно быть BLOB. После загрузки строка должна быть преобразована обратно в растровое изображение, а затем в изображение (это преобразование должно быть написано парнем API).

public String BitMapToString(Bitmap bitmap) {
 ByteArrayOutputStream baos=new  ByteArrayOutputStream();
 bitmap.compress(Bitmap.CompressFormat.PNG,100, baos);
 byte [] b=baos.toByteArray();
 String temp=Base64.encodeToString(b, Base64.DEFAULT);
 return temp;
}
person Harish Reddy    schedule 22.10.2019