0

Я использую eclipse, и проблема в том, что мой код httpConnection работает для android 2.3.3. но он не работает для Android 5.0. Я не могу справиться с этим.Ошибка Android 5.0 OpenHttpConnection

private InputStream OpenHttpConnection(String urlString) throws IOException{ 
    InputStream in = null; 
    int response = -1; 
    URL url = new URL(urlString); 
    URLConnection conn = url.openConnection(); 
    if(!(conn instanceof HttpURLConnection)) 
     throw new IOException("Not an HTTP connection"); 
    try{ 
     HttpURLConnection httpConn = (HttpURLConnection) conn; 
     httpConn.setRequestMethod("GET"); 
     httpConn.connect(); 
     response = httpConn.getResponseCode(); 
     if(response == HttpURLConnection.HTTP_OK){ 
      in = httpConn.getInputStream(); 
     } 
    } 
    catch(Exception ex){ 
     throw new IOException ("Error connecting"); 
    } 
    return in; 
} 

Это дает мне «Ошибка подключения» на android 5.0 также android 4.0.3.

+0

То есть собственная строка ошибки. Вы выбрасываете ценную информацию. Вы должны использовать ex.getMessage(), чтобы получить реальную ошибку. И посмотрите и разместите свой логарифм, поскольку у вас больше ошибок/исключений. – greenapps

ответ

0

С вашего описания того, что эта ошибка не появляется при использовании Android 2.3.3, она может иметь какое-то отношение к новому «Строгому режиму».

Когда вы выполняете сетевые операции в основном потоке, это может замедлить или заблокировать обработку графического интерфейса, который работает в основном потоке. Это приведет к невосприимчивому поведению. Начиная с уровня API 9, существует так называемый «Строгий режим», который блокирует такое поведение. Поэтому вы должны использовать AsyncTask и выполнять сетевые операции в фоновом потоке. Если вы этого не сделаете, вы обычно получаете такие ошибки. Как уже упоминалось выше, вы должны получить дополнительную информацию о заброшенном исключении, чтобы узнать, что представляет собой настоящая проблема.

Смотрите также: stackoverflow post: cannot-connect-using-httpconnection-in-android

И читать больше о AsyncTask: AsyncTask

Смежные вопросы