将网页加载到Android应用中

时间:2015-01-20 00:32:50

标签: java android android-activity webview

我正在使用Android应用,我希望能够在应用中加载网页。我已经在互联网上浏览了一段时间,似乎无法让它恰到好处。我知道我的互联网连接已建立,因为我可以使用我的浏览器。我正在进行Android开发和学习的新手,所以任何精心设计都会令人惊叹。这是我正在使用的代码:

public class MainActivity extends Activity {
private class MyWebViewClient extends WebViewClient {
      @Override
      public boolean shouldOverrideUrlLoading(WebView view, String url) {
          view.loadUrl(url);
          return true;
      }
}
Button btnBack;
WebView webview;
@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    webview=(WebView)findViewById(R.id.webview1);
    webview.setWebViewClient(new MyWebViewClient());
    openURL();
}

 /** Opens the URL in a browser */
private void openURL() {
    webview.loadUrl("http://www.google.com");
    webview.requestFocus();
}
}

和我的xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world" />

<RelativeLayout android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:layout_below="@+id/rlayout1"
    android:id="@+id/rlayout2">
    <WebView android:id="@+id/webview1" android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1.0" />
</RelativeLayout>

这是我运行应用程序时会发生什么: enter image description here

1 个答案:

答案 0 :(得分:2)

哇,伙计们,对不起,如果这是垃圾邮件,但我刚刚找到了一个我以前没见过的论坛解释。 Android需要在应用中使用互联网权限才能访问互联网。我认为它会给我一个权限异常,但它只是没有加载它。这是我添加到xml清单中以使其正常工作的内容

    <uses-permission android:name="android.permission.INTERNET" />

再次,对不起,我觉得因为不知道这件事真的很蠢。您认为控制台会打印某种安全/权限异常