从android [duplicate]中的URL检索JSON数据时出现异常

问题描述 投票:-1回答:2

这个问题在这里已有答案:

这是我打电话的URL -

private String url="http://mywebsite.com/requiredfolder/myfile.php";

这是从上面的URL获取的json输出 -

{"wallpapers":[{"id":"9","video_url":"http://mywebsite.com/AndroidApp/VideoUploads/[email protected]_X5x6MVgv_VID-20171202-WA0012.mp4","downloads":"0","fav":"0"},
{"id":"8","video_url":"http://mywebsite.com/AndroidApp/VideoUploads/[email protected]_eFmWtS@I_Funny Kid playing.mp4","downloads":"0","fav":"0"},
{"id":"7","video_url":"http://mywebsite.com/AndroidApp/VideoUploads/[email protected]_trE3U&%x_VID_20171019_163735.mp4","downloads":"0","fav":"0"},
{"id":"6","video_url":"http://mywebsite.com/AndroidApp/VideoUploads/[email protected]_ROgIfyHG_Assamesefunny.mp4","downloads":"0","fav":"0"},
{"id":"3","video_url":"http://mywebsite.com/AndroidApp/VideoUploads/[email protected]_C2z$XU6!_Bombay Ka Brahman.mp4","downloads":"0","fav":"0"}],"success":1,"count":"5"}

现在在我的Java文件中尝试使用给定代码读取相同内容时 -

try
        {
            DefaultHttpClient defaultClient = new DefaultHttpClient();
            Log.d("Message : ","DefaultHttpClient done");
            HttpGet httpGetRequest = new HttpGet(url);
            Log.d("Message : ","HttpGet done");
            HttpResponse httpResponse = defaultClient.execute(httpGetRequest);
            Log.d("Message : ","HttpResponse done");
            BufferedReader reader = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent(), "UTF-8"));
            Log.d("Message : ","BufferedReader done");

            result = reader.readLine();
            //response = CustomHttpClient.executeHttpGet(url);
            //Log.d("Message : ","response done");
            //result = response.toString();
            Log.d("Message : ","result done");
            json = new JSONObject(result);
         }
          catch (Exception e) {
            Log.e("log_tag","Error in http connection!!" + e.toString());
         }

在上面的代码中,符合 -

HttpResponse httpResponse = defaultClient.execute(httpGetRequest);

我得到运行时execption

E/log_tag: Error in http connection!!android.os.NetworkOnMainThreadException

苦苦挣扎但没有任何想法,我的代码上的任何灯都会很棒。

php android mysql
2个回答
0
投票

NetworkOnMainThreadException

应用程序尝试在其主线程上执行网络操作时引发的异常。尝试在不同的后台线程中实现您的逻辑。

NetworkOnMainThreadException


© www.soinside.com 2019 - 2024. All rights reserved.