Как мое приложение может попросить пользователя выбрать файл и затем загрузить этот файл на сервер? Файл будет загружен из браузера или загружен с сохраненной камеры.
Я ожидаю, что пользователь выберет файл, используя любой файловый браузер, который проверит папку, в которую записывают эти две вещи. Затем я сохраню путь к файлу и выполню загрузку во время отправки электронного письма.
Подскажите, пожалуйста, как выбрать файл и есть ли способ загрузить файл с помощью HttpPost
. (если нет, я напишу отдельный код загрузки, но мне все еще нужно будет, чтобы пользователь мог выбрать файл.)
Редактировать: Найден код выбора файла из исходного кода приложения для электронной почты Android . Существует какой-то встроенный инструмент выбора файлов, который использует идентификаторы вместо обычной файловой системы. Приложение отфильтровало его по типу image / *, но если вы удалите этот фильтр, оно спросит, следует ли ему использовать галерею (которая имеет ссылку на меню на камеру) или использовать звуковой файл или записать новый звуковой файл. Начальное место src/com/android/email/activity/MessageCompose.java
. Метод onOptionsItemSelected
и имеет switch
case:
для вложений.
Редактировать: Решение
Оказывается, что Android SDK включает в себя только часть библиотеки apache и поэтому HttpClient не существует. Вместо этого я получу данные для загрузки с несколькими запросами и внесу данные Base64 в один из параметров POST.