簡體   English   中英

WebView無法使用INTERNET權限

[英]WebView is not working with INTERNET permission

我有一個簡單的應用程序,但無法制作WebView來顯示google.com。

沒有錯誤,但在EditText上沒有任何顯示。

我已經添加了Internet權限,但是它不起作用。

這是我的清單。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.taxihelperforcustomer"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16" />

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

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.taxihelperforcustomer.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

</manifest>

我認為清單中沒有問題。 我不知道問題到底出在哪里。 這是我的代碼。

EditText mResult;
public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mResult = (EditText)findViewById(R.id.result);

        Button btn = (Button)findViewById(R.id.sendBtn);
        btn.setOnClickListener(new Button.OnClickListener(){

   public void onClick(View v) {
    // TODO Auto-generated method stub

    String html = DownloadHtml("http://www.google.com");
    try{

     mResult.setText(html);

    } catch(HTMLException e) {
     Toast.makeText(v.getContext(), e.getMessage(), Toast.LENGTH_LONG).show();
    }
   }
        });
    }

public String DownloadHtml(String addr){
   StringBuilder googleHtml = new StringBuilder();
   try{
      URL url = new URL(addr);
      HttpURLConnection conn = (HttpURLConnection)url.openConnection();
      if(conn != null){
         conn.setConnectTimeout(10000);
         conn.setUseCaches(false);
         if(conn.getResponseCode() == HttpURLConnection.HTTP_OK){
            BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "EUC-KR"));
            for(;;)
            {
                String line = br.readLine();
                if(line == null)
                    break;
                googleHtml.append(line + "\n");
             }
          br.close();
       }
        conn.disconnect();
     }
   } catch(Exception ex){
      Toast.makeText(this, ex.getMessage(), Toast.LENGTH_LONG).show();
   }
   return googleHtml.toString();
   }

LogCat上沒有錯誤或消息。 我正在我的設備上測試此代碼。

您不應從主線程訪問網絡。 使用AsyncTask執行訪問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM