1

Я пытаюсь создать простое приложение для тестирования, в котором я делаю простой Http-соединение. Код отлично работает на симуляторе, но когда я тестирую приложение на реальном устройство не возвращает код ответа. Я думаю, что есть некоторая ошибка в http-соединении.Ошибка подключения Http на реальном устройстве BlackBerry

Вот код, который я использую для подключения HTTP:

httpConnection = (HttpConnection)Connector.open("http://www.google.com"); 

Устройство, которое я использую Blackberry 8520 v5.0.0.592

также дать мне несколько советов о том, как это сделать отладка любого приложения с реального устройства с использованием плагина eclipse.

Заранее спасибо.

+0

Первые вещи, чтобы проверить: это устройство есть план данных BlackBerry активирован для него? Если вы не уверены, что APN настроен правильно и попробуйте добавить apporg, deviceSide = true для URL: «http: //www.google.com; deviceSide = true» – Richard

+0

Да, у устройства есть BB Data Plan. Я попытался использовать deviceSide = true, также включил параметр APN, оставляя пустое имя пользователя и пароль. Но это не помогло мне. –

+0

Как вы указали настройки APN? Какой у вас оператор? – hrnt

ответ

2

Если достаточно того, что ваша программа работает с OS 5.0 и выше, а затем попробуйте использовать Network API:

ConnectionFactory f = new ConnectionFactory(); 
ConnectionDescriptor descr = f.getConnection("http://www.google.com"); 

HttpConnection connection = (HttpConnection) descr.getConnection(); 

Эта часть кода пытается использовать первый доступный тип подключения. Вы можете настроить его, если хотите.

Что касается отладки, просто установите BlackBerry Desktop Software, подключите 8520 к USB-кабелю и от затмения, нажмите «Выполнить» -> «Отладка как ...» -> BlackBerry Device.

+0

Я пробовал это, но получил код ответа 302 как на симуляторе, так и на реальном устройстве ..... у вас есть идея относительно этого ......... !!! –

+0

HTTP-код ответа 302 означает, что ресурс, который вы ищете, находится в другом URI, который должен быть указан в заголовке Location: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html –

+0

можете ли вы любезно скажите, как решить эту проблему (кода ответа 302) ... если возможно, любезно предоставите какой-либо исходный код ....... –

0

Попробуйте добавить транспорт обратиться Например для подключения через Wi-Fi:

httpConnection = (HttpConnection)Connector.open("http://www.google.com;interface=wifi"); 
+0

Я использую соединение по умолчанию. Я думаю, он тоже должен работать. Isn it –

1

Завод связи отлично работал на новых устройствах, но не работал с некоторыми из более старых, таких как кривые и полужирный. Это то, что решить это для меня:

BrowserField browserField = new BrowserField(); 
BrowserFieldRequest Req = new BrowserFieldRequest("http://www.yourserver.com/"); 

InputStream inputStream = browserField.getConnectionManager().makeRequest(Req).openInputStream(); 
1

Попытка перенаправить соединение, используя следующий код:

HttpConnection hc = (HttpConnection) Connector.open(url1); 

hc.setRequestMethod(HttpConnection.GET); 
hc.setRequestProperty("User-Agent", "Profile/MIDP-2.0 Configuration/CLDC-1.0"); 
InputStream is = null; 
String location =hc.getHeaderField("Location"); 

HttpConnection hcc = (HttpConnection) Connector.open(location); 
is = hcc.openDataInputStream(); 
Смежные вопросы