将页面内容拉到字符串android

时间:2014-10-31 18:28:18

标签: java android androidhttpclient

我正在尝试将一个php页面拉到android上的字符串。 问题是我无法在try之外获得response_str变量。 无论我在做什么,它都会继续返回null。 URL返回1或0。

这是我的代码:

public String IsLoggedIn() {
        String url_text = "http://klh-dev.com/lehava/lehava/system/isloggedin.php";
        String response_str = null;
        try {
                HttpClient client = new DefaultHttpClient();
                HttpGet request = new HttpGet(url_text.toString());
                ResponseHandler<String> responseHandler = new BasicResponseHandler();
                response_str = client.execute(request, responseHandler);
        }
        catch (Exception e) {
        }
        return response_str;
}

我得到的错误:

10-31 20:33:27.906: I/chromium(13374): [INFO:CONSOLE(74)] "Uncaught TypeError: Object [object Object] has no method 'n33_scrolly'", source: http://www.klh-dev.com/lehava/lehava/system/js/init.js (74)

谢谢你, Morha13

1 个答案:

答案 0 :(得分:0)

如果您在主线程上执行此操作,那么您可能会收到NetworkOnMainThreadException。

如果是这种情况,请尝试将代码移动到后台线程,例如使用AsyncTask。

并且不要忘记互联网许可。

试试这个:

   new AsyncTask<Void, Void, Void>(){

        @Override
        protected Void doInBackground(Void... voids) {
            String url_text = "http://klh-dev.com/lehava/lehava/system/isloggedin.php";
            String response_str = null;
            try {
                HttpClient client = new DefaultHttpClient();

                HttpGet request = new HttpGet(url_text.toString());
                ResponseHandler<String> responseHandler = new BasicResponseHandler();
                response_str = client.execute(request, responseHandler);

                Log.v("Response", response_str);
            }
            catch (Exception e) {
                e.printStackTrace();
            }

            return null;
        }
    }.execute();
相关问题