Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/10: Рейтинг темы: голосов - 10, средняя оценка - 4.60
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
1

GET запрос

17.05.2013, 20:47. Просмотров 1853. Ответов 11
Метки нет (Все метки)

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public class RegistrationSender extends AsyncTask<Void, Void, Void> {
        private String source, ans="-2";
        
        public RegistrationSender(String source, String login, String action) {
            this.source = source+"?action="+action+"&login="+login;
        }
        private String convertStreamToString(InputStream is) {
            try {
                return new Scanner(is).useDelimiter("\\A").next();
            } catch (java.util.NoSuchElementException e) {
                return "";
            }
        }
        
        public String getAnswer() { return ans; }
        @Override
        protected Void doInBackground(Void... params) {
            try {
                URL url = new URL(source);
    
                InputStream is = url.openStream();   // тут вылетает чтоли? если вылетает, то почему все равно -2, а не -1
                is.close();
                ans = convertStreamToString(is);
 
            } catch (MalformedURLException e) {
                ans = "-1";
                e.printStackTrace();
            } catch (Throwable t) {
                ans = "-1";
                t.printStackTrace();
            }
            return null;
            
        }
 
        @Override
        protected void onPostExecute(Void result) {
                               // Переустанавливаем содержимое нашего поля
         //   textView.setText(Html.fromHtml(message, igCached, null));
        }
    }
Java
1
2
3
RegistrationSender r=new RegistrationSender("http://www.connections.ixrad.ru/registration.php","check","check");
                r.execute();
                Toast.makeText(getActivity(), r.getAnswer(), Toast.LENGTH_LONG ).show();
ВСЕГДА выводит -2, т.е. предустановленное значение... как так?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.05.2013, 20:47
Ответы с готовыми решениями:

Как именно можно сделать SQLite запрос, если запрос уже сформирован?
Здравствуйте. Помогите понять , как именно можно сделать SQLite запрос , если...

Как записать запрос так чтобы их запрос суммировался в одну ячейку?
Как записать этот запрос так чтобы их запрос суммировался в одну ячейку?...

Как посмотреть T-SQL запрос который генерирует Entity Framework запрос
как посмотреть T-SQL запрос который генерирует Entity Framework запрос в visual...

Запрос данных из БД. Один большой запрос или много маленьких?
Есть основная форма, на которой расположен TreeView, содержащий щас 30 ветвей....

Как в Delphi сделать запрос на запрос, база mssql, BDE
Добрый день! Кто-нибудь может подсказать, как можно Tquery и использовать как...

11
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.05.2013, 20:57 2
подебагайте.
1
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
17.05.2013, 21:11  [ТС] 3
Java
1
2
3
4
5
6
7
Log.d("ans", " = "+ans);               // -2
                InputStream is = url.openStream();
                Log.d("ans", " = "+ans);               // -2
                is.close();
                Log.d("ans", " = "+ans);               // -2
                ans = convertStreamToString(is);
                Log.d("ans", " = "+ans);               // пусто
выходит ошибка в функции перевода..?
есть ли другие варианты?
выходить должна одна цифра,а не текста, если это имеет значение
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.05.2013, 21:13 4
эм, а зачем вы закрыли поток прежде чем прочли его?
1
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
17.05.2013, 21:19  [ТС] 5
или в этой функции вызывается исключение

Добавлено через 1 минуту
ну а как..записал, закрыл, использую)

Добавлено через 48 секунд
если закрывать после использования, то 1
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.05.2013, 21:20 6
неправильно. открыл-использую-закрыл.

Добавлено через 20 секунд
Цитата Сообщение от spydark91 Посмотреть сообщение
если закрывать после использования, то 1
ну вот...
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
17.05.2013, 21:21  [ТС] 7
почему же тогда при вызове getAnswer() -2....
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.05.2013, 21:22 8
так 1 или -2? вы меня запутали.
0
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
17.05.2013, 21:25  [ТС] 9
в логе 1, а при вызове getAnswer -2..
сам запутался

т.е. когда из самого класса я пишу в лог, то все ок
Java
1
2
3
4
5
                InputStream is = url.openStream();
ans = convertStreamToString(is);
                is.close();
                
                Log.d("ans", " = "+ans);               //  все ОК
теперь использую

Java
1
2
3
4
RegistrationSender r=new RegistrationSender("http://www.connections.ixrad.ru/registration.php","check","check");
                r.execute();
// в тосте -2
                Toast.makeText(getActivity(), r.getAnswer(), Toast.LENGTH_LONG ).show();
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.05.2013, 21:34 10
ну так таск еще не успел завершится и значение еще не записалось когда вы вызвали getAnswer, для этого и есть метод onPostExecute, в нем и делайте все что нужно с ответом.
1
spydark91
86 / 86 / 13
Регистрация: 03.03.2011
Сообщений: 1,873
17.05.2013, 22:05  [ТС] 11
опять же вопрос по моему незнанию java
как из вложенного класса обратиться к объекту из класса-родителя
т.е.
Java
1
2
3
4
5
6
class parent {
String str;
  class child {
      обращаемся к str
  }
}
Добавлено через 6 минут
понял,просто достаточно объявить str пабликом
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
17.05.2013, 22:08 12
Java
1
2
3
4
5
6
class parent {
String str;
  class child {
      {str = "1";}
  }
}
Добавлено через 2 минуты
у меня даже с private все работает.
0
17.05.2013, 22:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2013, 22:08

Как в sql запрос вставить еще один запрос правильно?
Есть длинный запрос, в котором можете даже не разбираться если не хотите, но...

Как переделать запрос в цикле на один запрос с фильтром по массиву
Мне говорят: код неправильный, надо запрос ciblockelement::getlist c фильтром...

Если нужно сделать запрос на добавление, зачем предварительно делать запрос на выборку?
Есть таблица: ID_записи, поле1, поле2, поле3. Хотелось бы записать запрос на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru