Тема: HTTP
Показать сообщение отдельно
Старый 11.09.2009, 19:00   #3
-=Jack=-
ПроЭктировщик
 
Аватар для -=Jack=-
 
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений
(для 44 пользователей)
Ответ: HTTP

Вот весь код этого метода:
try {
                HttpConnection con = (HttpConnection) Connector.open("http://www.google.com:80/");
                InputStream is = con.openInputStream();
                long len = con.getLength();
                int ch = 0;
                char[] r = new char[300];
                if(len!=-1){
                    for(int i = 0;i<len;i++)
                        if((ch = is.read())!= -1) r[i] = (char)ch;
                }
                else {
                    int i = 0;
                    while ((ch = is.read()) != -1){
                        r[i] = (char) ch;
                        i++;
                    }
                }
                is.close();
                con.close();
                TransText.setString(new String(r));
            } catch (IOException ex) {
                ex.printStackTrace();
            }
При этом вылазит вопрос "разрешить доступ к инету?" и что не нежимай - ничего не даёт...

Хм, только что заметил, что программа виснет не после того, как я подтверждаю доступ к инету, а именно на запросе доступа... Может нужно открывать подключение в отдельном потоке? Или может ещё что-то нужно прописать перед первой строкой?

Скачал 2 примера реализиции HTTP-подключения, с ними такой же трабл... А вот скачал Opera mini, запустил на эмуляторе - работает нормально, не виснет на запросе...
__________________
Я бы изменил мир, но Бог не даёт исходников...

Последний раз редактировалось -=Jack=-, 11.09.2009 в 19:12.
(Offline)
 
Ответить с цитированием