Как настроить приложение Android для связи с веб-сервером через Интернет? - PullRequest
4 голосов
/ 29 февраля 2012

У меня есть идея для приложения, и в настоящее время я изучаю разработку для Android.Я довольно знаком с созданием простых автономных приложений.

Я также знаком с PHP и веб-хостингом.

Я хочу сделать так, чтобы приложение для Android отправляло изображение на серверчерез интернет и заставить сервер вернуть обработанное изображение.Понятия не имею, как мне это сделать.

Подскажите, пожалуйста, как мне добиться этого или какие темы мне следует рассмотреть?Кроме того, какие сценарии можно использовать для обработки на веб-сервере?В частности, могу ли я использовать PHP или Java?

Спасибо!

Ответы [ 3 ]

6 голосов
/ 29 февраля 2012
For Image Uploading
///Method Communicate with webservice an return Yes if Image uploaded else NO
String  executeMultipartPost(Bitmap bm,String image_name) {
    String resp = null;
    try {  
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        bm.compress(CompressFormat.JPEG, 75, bos);
        byte[] data = bos.toByteArray();
        HttpClient httpClient = new DefaultHttpClient();
        HttpPost postRequest = new HttpPost("domain.com/upload_image.php");
        ByteArrayBody bab = new ByteArrayBody(data, image_name);

        MultipartEntity reqEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
        reqEntity.addPart("uploaded", bab);
        reqEntity.addPart("photoCaption", new StringBody("sfsdfsdf"));
        postRequest.setEntity(reqEntity);
        HttpResponse response = httpClient.execute(postRequest);
        BufferedReader reader = new BufferedReader(new  InputStreamReader(response.getEntity().getContent(), "UTF-8"));
        String sResponse;
        StringBuilder s = new StringBuilder();
        while ((sResponse = reader.readLine()) != null) {
            s = s.append(sResponse);
        }
        resp=s.toString();
    } catch (Exception e) {
        // handle exception here
        Log.e(e.getClass().getName(), e.getMessage());
    }
    return resp;
}

//PHP Code 
<?php 

    $target = "upload/"; 

    $target = $target . basename( $_FILES['uploaded']['name']) ; 
    $ok=1; 
    if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) 
    {
        echo "yes";
    } 
    else {
        echo "no";
    }
?> 
1 голос
/ 29 февраля 2012

Обычно мы делаем это через http соединение, вы можете передать изображение в post-params, для дальнейшей ссылки смотрите ссылку

0 голосов
/ 29 февраля 2012

Вам необходимо создать простой веб-сервис php, который принимает параметры в виде байтов изображения и обрабатывает изображение и сохраняет на сервере.Для этого приложение для Android отправит данные изображения в байтах на сервер с помощью HttpPost.

Для получения цели вам необходимо создать другой веб-сервис, который будет выводить имя файла изображения, откуда приложение для Android может получить изображение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...