Соединение с Android установлено, но объект не отправлен - PullRequest
0 голосов
/ 25 января 2012

Я пытаюсь отправить объект на сервер, который я написал. Я только что узнал об AsyncTask и пытаюсь использовать его, чтобы не допустить сетевых задач в основной поток. В настоящее время он устанавливает соединение, но не получает объект. Я знаю, что с сервером все в порядке, потому что я протестировал его с помощью кода, написанного для отправки объекта с моего ноутбука. Также я не получаю никаких сообщений об ошибках.

Код:

private class sendToServer extends AsyncTask<UserObject, Integer, Double> {
    @Override
    protected Double doInBackground(UserObject...userObjects) {
        ObjectOutputStream oos = null;

        String Header = "GPSUpdate";
        String Userid = "07000000001";
        String Latitude = "6.00";
        String Longitude = "6.00";

        try{
            Socket socket = new Socket("igor.gold.ac.uk", 3000);
            oos = new ObjectOutputStream(socket.getOutputStream());

            UserObject [] userObject = new UserObject[1];
            userObject[0] = new UserObject();
            userObject[0].setHeader(Header);
            userObject[0].setUserid(Userid);
            userObject[0].setLatitude(Latitude);
            userObject[0].setLongitude(Longitude);

            oos.writeObject(userObject[0]);
            oos.flush();
            oos.close();
        }
        catch(Exception e){
        }
        return null;
    }
    @Override
    protected void onProgressUpdate(Integer... progress) {
    }
    @Override
    protected void onPostExecute(Double result) {
    }
}

Также код для отправки объекта работает при запуске с моего ноутбука. Нужно ли устанавливать разрешения или что-то другое, если я использую AsyncTask для обработки сетевых операций.

Спасибо за любую помощь.

Ответы [ 2 ]

1 голос
/ 25 января 2012

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

  1. Имеет ли ваше приложение разрешение на ИНТЕРНЕТ, объявленное в манифесте?

  2. Реализует ли UserObjectСериализуемый?

0 голосов
/ 26 января 2012

Я нашел проблему, это была моя собственная простая ошибка. Весь код был в порядке, но отправляемый объект находился в другом пакете на сервере, чем отправляемый. Обновите их, чтобы они оба были в одном пакете в соответствующем месте.

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