为了账号安全,请及时绑定邮箱和手机立即绑定

空白页面,求帮忙

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

<application
   android:allowBackup="true"
   android:icon="@mipmap/ic_launcher"
   android:label="@string/app_name"
   android:supportsRtl="true"
   android:theme="@style/AppTheme" >
   <activity android:name=".MainActivity"
       android:hardwareAccelerated="false">
       <intent-filter>
           <action android:name="android.intent.action.MAIN" />
<uses-permission android:name="android.permission.INTERNET"/>
           <category android:name="android.intent.category.LAUNCHER" />
       </intent-filter>
   </activity>
</application>


//activity_main.xml 
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.example.bobqiu.http_01.MainActivity">

<WebView
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:id="@+id/webview1"
   android:layout_alignParentBottom="true"
   android:layout_alignParentLeft="true"
   android:layout_alignParentStart="true"
   android:layout_marginBottom="72dp" />
</RelativeLayout>
//HttpThread.java
package com.example.bobqiu.http_01;

   import android.os.Handler;
   import android.webkit.WebView;

   import java.io.BufferedReader;
   import java.io.IOException;
   import java.io.InputStreamReader;
   import java.net.HttpURLConnection;
   import java.net.MalformedURLException;
   import java.net.URL;

   /**
    * Created by Bobqiu on 2016/9/22.
    */

   public class HttpThread extends Thread {
       private String url;

       private WebView webView;

       private Handler handler;

       public HttpThread(String url,WebView webView,Handler handler){
           this.url = url;
           this.webView = webView;
           this.handler = handler;
       }
       public void run(){
           try {
               URL httpUrl = new URL(url);
               try {
                   HttpURLConnection connection = (HttpURLConnection) httpUrl.openConnection();
                   connection.setReadTimeout(5000);
                   connection.setRequestMethod("GET");
                   final StringBuffer sb = new StringBuffer();
                   BufferedReader reader = new BufferedReader(new
                   InputStreamReader(connection.getInputStream()));
                   String str;
                   while((str = reader.readLine())!=null){
                       sb.append(str);
                   }

                   handler.post(new Runnable() {
                       @Override
                       public void run() {                     
                       webView.loadData(sb.toString(),"text/html;
                       charset=utf-8",null);
                       }
                   });
               } catch (IOException e) {
                   e.printStackTrace();
               }
           } catch (MalformedURLException e) {
               e.printStackTrace();
           }
       }
   }
//MainActivity.java
package com.example.bobqiu.http_01;

import android.Manifest;
import android.os.Handler;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebView;

public class MainActivity extends AppCompatActivity {
   private WebView webView;
   private Handler handler = new Handler();
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       webView= (WebView) this.findViewById(R.id.webview1);
       webView.getSettings().setDomStorageEnabled(true);
       webView.getSettings().setJavaScriptEnabled(true);
       int permissionCheckContextCompat.
       checkSelfPermission(MainActivity.this,
               Manifest.permission.INTERNET);
       System.out.println("!!!!!"+permissionCheck);//it shows 0 in console
       new HttpThread("https://m.baidu.com/",webView,handler).start();
   }
}


正在回答

3 回答

好像用模拟器的问题     还有这一段代码
handler.post(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
webView.loadDataWithBaseURL(url,sb.toString(), "text/html", "utf-8", null);
}
});
webView.loadDataWithBaseURL(url,sb.toString(), "text/html", "utf-8", null);
这个要改下


0 回复 有任何疑惑可以回复我~

好像是安卓版本的问题,6.0版本就没有显示,在4.4.2版本的模拟器上成功看到了页面

1 回复 有任何疑惑可以回复我~

https://www.baidu.com

http://www.baidu.com

这些都试过了 也不行 就是有一个区域能看到WebView的框 但是里面啥都没有

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android中的Http通信
  • 参与学习       64671    人
  • 解答问题       306    个

了解Android-http网络编程应用,常见忘了请求相关应用

进入课程

空白页面,求帮忙

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信