2016-02-15 4 views
-3

Мои сценарии имеют полный доступ, когда я использую свой план данных, и мое приложение работает нормально, только когда я переключаюсь на Wi-Fi, мои скрипты продолжают получать внутреннюю ошибку сервера.FileNotFoundException при использовании Wi-Fi в Android

Я использую PHP скрипты, где мое приложение получает доступ к этой помощью:

public JSONObject getHttpResponse(String domUrl){ 

    String parsedString = ""; 

    //Log.d("Tag Name", "gggg"); 
    try { 

     URL url = new URL(domUrl); 
     URLConnection conn = url.openConnection(); 

     HttpURLConnection httpConn = (HttpURLConnection) conn; 
     httpConn.setAllowUserInteraction(false); 
     httpConn.setInstanceFollowRedirects(true); 
     httpConn.setRequestMethod("GET"); 
     httpConn.connect(); 

     InputStream is = httpConn.getInputStream(); 
     parsedString = convertinputStreamToString(is); 

     httpConn.disconnect(); 
     //((HttpURLConnection) conn).disconnect(); 

     if(parsedString.length() > 0){ 
      return getJSONResponseObject(parsedString); 
     } 

     //Log.d("Tag Name xfgfgxfgxfg", parsedString); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

    return null; 
} 

И мой файл AndroidManifest.xml содержит это:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.xxx.xxx.xxx" > 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="com.example.towntour.permission.MAPS_RECEIVE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.CALL_PHONE" /> 
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 


<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

</manifest> 

Ошибка я получаю:

java.io.FileNotFoundException: http://www.hugt.co.uk/getTopThreads.php?threadTitle=&threadCountry=&threadCategory=&threadSubCategory= 
    02-15 10:28:10.675 6161-6184/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:186) 
    02-15 10:28:10.675 6161-6184/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.threadbump.trikampatel.threadbump.MainActivity.getHttpResponse(MainActivity.java:1220) 
    02-15 10:28:10.675 6161-6184/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.threadbump.trikampatel.threadbump.MainActivity$17.run(MainActivity.java:1063) 
    02-15 10:28:10.675 6161-6184/com.threadbump.trikampatel.threadbump W/System.err﹕ at java.lang.Thread.run(Thread.java:864) 
    02-15 10:28:10.685 6161-6183/com.threadbump.trikampatel.threadbump W/System.err﹕ java.io.FileNotFoundException: http://www.hugt.co.uk/getFavourites.php?userID=49&threadTitle=&threadCountry=&threadCategory=&threadSubCategory= 
    02-15 10:28:10.685 6161-6183/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:186) 
    02-15 10:28:10.685 6161-6183/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.threadbump.trikampatel.threadbump.MainActivity.getHttpResponse(MainActivity.java:1220) 
    02-15 10:28:10.685 6161-6183/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.threadbump.trikampatel.threadbump.MainActivity$16.run(MainActivity.java:1009) 
    02-15 10:28:10.685 6161-6183/com.threadbump.trikampatel.threadbump W/System.err﹕ at java.lang.Thread.run(Thread.java:864) 
    02-15 10:28:10.685 6161-6182/com.threadbump.trikampatel.threadbump W/System.err﹕ java.io.FileNotFoundException: http://www.hugt.co.uk/getThread.php?threadTitle=&threadCountry=&threadCategory=&threadSubCategory= 
    02-15 10:28:10.685 6161-6182/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:186) 
    02-15 10:28:10.685 6161-6182/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.threadbump.trikampatel.threadbump.MainActivity.getHttpResponse(MainActivity.java:1220) 
    02-15 10:28:10.685 6161-6182/com.threadbump.trikampatel.threadbump W/System.err﹕ at com.threadbump.trikampatel.threadbump.MainActivity$12.run(MainActivity.java:714) 
    02-15 10:28:10.685 6161-6182/com.threadbump.trikampatel.threadbump W/System.err﹕ at java.lang.Thread.run(Thread.java:864) 

Может ли кто-нибудь проконсультироваться?

+0

Вероятно, из-за всех Params пустуют в URL 'threadTitle = & threadCountry = & threadCategory = & threadSubCategory =' –

+0

@ ρяσѕρєяK, спасибо за ответ, но сценарии прекрасно работают при использовании моего плана интернет-данных. – redoc01

+0

Это может быть связано с сервером, на котором я размещаю? – redoc01

ответ

0

У меня была аналогичная проблема.

Добавление этой линии

urlConnection.setRequestProperty("Accept-Encoding", "identity"); 

Настройка по Accept-Encoding заголовок запроса явно отключает автоматическую распаковку и оставляет заголовки ответа нетронутыми; вызывающие должны обрабатывать декомпрессию по мере необходимости, в соответствии с заголовком Content-Encoding ответа. С помощью андроида ссылки HttpURLConnection http://developer.android.com/reference/java/net/HttpURLConnection.html

+0

По-прежнему не повезло, спасибо за ответ, может ли это быть связано с настройкой на сервере? – redoc01

+0

Привет, смогла ли это исправить? Я не думаю, что это зависит от вашего сервера, я думаю, что это имеет какое-то отношение к вашим запросам – Watson