it-swarm.com.de

Beim Android-Emulator beim Versuch, einen Webview zu laden, wird net :: err_cache_miss angezeigt

Ich habe das Beispiel auf der Android-Entwickler-Website ausprobiert, um eine Webseite ohne Erfolg auf einer WebView-Komponente anzuzeigen. Der Emulator zeigt den folgenden Fehler:

Webseite nicht verfügbar Die Webseite unter http://developer.Android.com konnte nicht geladen werden, weil: net :: ERR_CHACHE_MISS

Ich konnte bis jetzt keine Lösung finden, selbst nachdem ich andere Threads im Web angeschaut hatte. Ich habe auch verschiedene Links ausprobiert .. Ich weiß nicht, ob es hilfreich sein könnte, die Ursache dieses Fehlers zu verstehen, aber der Emulator ist Nexus 4 API 21 mit Android 5.0.1. Ich verwende Android Studio 1.0.

Der Code entspricht dem Beispiel:

In MainActivity.Java:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);            
    setContentView(R.layout.activity_main);

    WebView myWebView = (WebView) findViewById(R.id.webview);
    WebSettings webSettings = myWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);           
    myWebView.loadUrl("http://developer.Android.com/");
}

In AndroidManifest:

<application
    Android:allowBackup="true"
    Android:icon="@drawable/ic_launcher"
    Android:label="@string/app_name"
    Android:theme="@style/AppTheme" >
    <uses-permission Android:name="Android.permission.INTERNET" />
.....

Und in der Ansicht habe ich den gleichen Code des Beispiels hinzugefügt

Beispiel ist: http://developer.Android.com/guide/webapps/webview.html

21
silvanasono

Genau, es ist mir einmal vorgekommen und die Lösung bestand darin, die folgende Zeile zu setzen: <uses-permission Android:name="Android.permission.INTERNET"/>

vor dem <application-Tag in der Datei manifest.xml.

Entweder fehlt diese Zeile oder sie ist falsch platziert (z. B. am Ende des </manifest>-Tags).

41

Für den Fall, dass jemand anderes auf dieses Problem stößt, und da es hier keine Antwort gibt, dachte ich, ich würde eine zur Verfügung stellen. 

Für mich stellte sich heraus, dass es sich einfach um die Reihenfolge der Tags in der Manifestdatei handelte. Das Benutzerberechtigungselement muss vor dem Anwendungselement angezeigt werden. Ich habe es einfach direkt unter das Manifest gelegt und das schien mir den Trick zu bringen. 

13

Eigentlich ist der Ort des Tags hier wichtig ..__ Das funktioniert zum Beispiel nicht:

    <activity Android:name=".MainActivity"
        Android:label="@string/app_name" >

        <intent-filter>
            <action Android:name="Android.intent.action.MAIN" />
            <category Android:name="Android.intent.category.LAUNCHER" />
        </intent-filter>
        <uses-permission Android:name="Android.permission.INTERNET" />
    </activity>

Der folgende Code funktioniert jedoch einwandfrei.

    <activity Android:name=".MainActivity"
        Android:label="@string/app_name" >
        <uses-permission Android:name="Android.permission.INTERNET" />
        <intent-filter>
            <action Android:name="Android.intent.action.MAIN" />
            <category Android:name="Android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
2
Senthil

Ich hatte den gleichen Fehler und habe das Problem behoben
innerhalb der Aktivität wie folgt:

<activity
        Android:name=".MainActivity"
        Android:label="@string/app_name" >
        <uses-permission Android:name="Android.permission.INTERNET" />
        <intent-filter>
            <action Android:name="Android.intent.action.MAIN" />
            <category Android:name="Android.intent.category.LAUNCHER"/>
        </intent-filter>
</activity>

Da ich in der Haupttätigkeit das WebView ... baue, hoffe ich, dass dies jemand anderem helfen wird.

2
Alexiscanny

Fügen Sie diese Berechtigungen einfach in Ihre AndroidManifest.xml ein.

<uses-permission Android:name="Android.permission.INTERNET" />
<uses-permission Android:name="Android.permission.ACCESS_NETWORK_STATE" />
1
Mediasoft

Bitte fügen Sie das Folgende außerhalb des Anwendungstags in die AndroidManifest.xml ein

    <uses-permission Android:name="Android.permission.INTERNET"/>
    <uses-permission Android:name="Android.permission.CHANGE_NETWORK_STATE"/>
    <uses-permission Android:name="Android.permission.Android.permission.ACCESS_NETWORK_STATE"/>
0
JSav