当我在 Android 上使用此 java 方法获取 Html 源代码时出现错误?

I'vgot a error when i getting Html Source with using this java method on android?

我有一个 android 项目,我必须使用 url 获取 html 源代码。

但是当我到达 response = Client.execute(Get,Handler); 行时,应用程序是 stopping/crashing。我找不到任何解决方案,我需要一些帮助。谢谢..

我正在使用此代码:

public String getHtml(String Link) {
HttpClient Client = new DefaultHttpClient();
HttpGet Get = new HttpGet(Link);
String response = "";
try {
    ResponseHandler<String> Handler = new BasicResponseHandler();
    response = Client.execute(Get,Handler); // When I give breakpoint here I see
                                            //   the problem here.. And when I
                                            //   arrive this line app is stopping
                                            //   on the phone or emulator.
} catch (IOException e) {
    e.printStackTrace();
}
return response;
}

public void Getir(View v) {
    TextView textt = (TextView)findViewById(R.id.gosterici);
    textt.setText(getHtml("http://www.google.com"));
}

日志猫; (抱歉复杂)

01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 I/dalvikvm﹕ Could not find method android.view.ViewGroup.onNestedScrollAccepted, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.onNestedScrollAccepted
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 W/dalvikvm﹕ VFY: unable to resolve virtual method 11344: Landroid/view/ViewGroup;.onNestedScrollAccepted (Landroid/view/View;Landroid/view/View;I)V
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 I/dalvikvm﹕ Could not find method android.view.ViewGroup.onStopNestedScroll, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.onStopNestedScroll
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 W/dalvikvm﹕ VFY: unable to resolve virtual method 11350: Landroid/view/ViewGroup;.onStopNestedScroll (Landroid/view/View;)V
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 D/dalvikvm﹕ VFY: replacing opcode 0x6f at 0x0000
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 I/dalvikvm﹕ Could not find method android.support.v7.internal.widget.ActionBarOverlayLayout.stopNestedScroll, referenced from method android.support.v7.internal.widget.ActionBarOverlayLayout.setHideOnContentScrollEnabled
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 W/dalvikvm﹕ VFY: unable to resolve virtual method 9038: Landroid/support/v7/internal/widget/ActionBarOverlayLayout;.stopNestedScroll ()V
01-04 23:57:49.043  19334-19334/com.example.cic.htmlreadmrk01 D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x000e
01-04 23:57:49.073  19334-19334/com.example.cic.htmlreadmrk01 I/dalvikvm﹕ Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
01-04 23:57:49.073  19334-19334/com.example.cic.htmlreadmrk01 W/dalvikvm﹕ VFY: unable to resolve virtual method 364: Landroid/content/res/TypedArray;.getChangingConfigurations ()I
01-04 23:57:49.073  19334-19334/com.example.cic.htmlreadmrk01 D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
01-04 23:57:49.073  19334-19334/com.example.cic.htmlreadmrk01 I/dalvikvm﹕ Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.internal.widget.TintTypedArray.getType
01-04 23:57:49.073  19334-19334/com.example.cic.htmlreadmrk01 W/dalvikvm﹕ VFY: unable to resolve virtual method 386: Landroid/content/res/TypedArray;.getType (I)I
01-04 23:57:49.073  19334-19334/com.example.cic.htmlreadmrk01 D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
01-04 23:57:49.108  19334-19334/com.example.cic.htmlreadmrk01 D/Activity﹕ #1 setTransGradationModeColor false
01-04 23:57:49.153  19334-19334/com.example.cic.htmlreadmrk01 I/﹕ PLATFORM VERSION : JB-MR-2
01-04 23:57:49.163  19334-19334/com.example.cic.htmlreadmrk01 I/HWUI﹕ EGLImpl-HWUI Protected EGL context created
01-04 23:57:49.183  19334-19334/com.example.cic.htmlreadmrk01 D/OpenGLRenderer﹕ Enabling debug mode 0
01-04 23:58:04.118  19334-19334/com.example.cic.htmlreadmrk01 D/AndroidRuntime﹕ Shutting down VM
01-04 23:58:04.118  19334-19334/com.example.cic.htmlreadmrk01 W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x41812c08)
01-04 23:58:04.123  19334-19334/com.example.cic.htmlreadmrk01 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: com.example.cic.htmlreadmrk01, PID: 19334
    java.lang.IllegalStateException: Could not find a method Husker(View) in the activity class com.example.cic.htmlreadmrk01.MainActivity for onClick handler on view class android.widget.Button with id 'button'
            at android.view.View.onClick(View.java:3985)
            at android.view.View.performClick(View.java:4752)
            at android.view.View$PerformClick.run(View.java:19561)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:146)
            at android.app.ActivityThread.main(ActivityThread.java:5635)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NoSuchMethodException: Husker [class android.view.View]
            at java.lang.Class.getConstructorOrMethod(Class.java:472)
            at java.lang.Class.getMethod(Class.java:857)
            at android.view.View.onClick(View.java:3978)
            at android.view.View.performClick(View.java:4752)
            at android.view.View$PerformClick.run(View.java:19561)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:146)
            at android.app.ActivityThread.main(ActivityThread.java:5635)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
            at dalvik.system.NativeStart.main(Native Method)
01-04 23:58:06.558  19334-19334/com.example.cic.htmlreadmrk01 I/Process﹕ Sending signal. PID: 19334 SIG: 9

是的,我找到了解决办法。

代码;

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        String resp = "";
        try {
            resp = new AsyncTaskClass().execute().get();
        } catch (InterruptedException e) {
            e.printStackTrace();
        } catch (ExecutionException e) {
            e.printStackTrace();
        }
        TextView txt = (TextView)findViewById(R.id.emre);
        txt.setText(resp);
    }

    class AsyncTaskClass extends AsyncTask<String, String, String> {
        private ProgressDialog progressDialog = null;

        @Override
        protected void onPreExecute() {

            progressDialog = new ProgressDialog(MainActivity.this);
            progressDialog.setTitle("Working..");
            progressDialog.show();
        }


        @Override
        protected String doInBackground(String... strings) {

            String resString = "";
            HttpClient client = new DefaultHttpClient();
            HttpGet get = new HttpGet("http://www.google.com");
            try {
                HttpResponse response = client.execute(get);
                HttpEntity entity = response.getEntity();
                InputStream is = entity.getContent();
                BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"), 8);
                StringBuilder sb = new StringBuilder();
                String line = null;
                while ((line = reader.readLine()) != null) {
                    sb.append(line+ "\n");
                }
                resString = sb.toString();
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
            return resString;
        }

        @Override
        protected void onPostExecute(String s) {
            super.onPostExecute(s);
            progressDialog.hide();
        }
    }
}