2011-03-29 5 views
1

J'ai un webview simple utilisé pour charger un fichier help3.html quand un utilisateur choisit un bouton de menu d'AIDE.Webview charge html dans android 2.2 mais pas android 2.1

Le fichier se charge et affiche bien dans un émulateur Android 2.2 (8), mais je reçois un message d'erreur "file //android_res/raw/help3.html not found" avec un émulateur Android 2.1 (7).

Je suppose qu'il y a du code dans les fichiers java ou xml que la version 2.1 n'aime pas, et l'erreur de fichier introuvable est un coup de chance.

Mon code java pour charger le fichier html:

import android.app.Activity; 
import android.os.Bundle; 
import android.webkit.WebView; 


public class Help extends Activity 
{ @Override 
    public void onCreate(Bundle savedInstanceState) 
    { super.onCreate(savedInstanceState); 
    setContentView(R.layout.helpview); 
    WebView mywebview = (WebView)findViewById(R.id.webviewHelp); 
    mywebview.loadUrl("file:///android_res/raw/help3.html"); 
    }  
} 

et mon fichier est helpview.xml:

<?xml version="1.0" encoding="utf-8"?> 

<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/webviewHelp" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"/> 

Je suis perplexe. Des idées pour lesquelles cela ne fonctionne pas?

Répondre

2

Je n'étais pas au courant que file:///android_res est valide dans n'importe quelle version d'Android.

Si vous mettez votre code HTML dans le dossier assets/ de votre projet, vous pouvez utiliser file:///android_asset comme préfixe. This sample project le démontre.

+0

Y a-t-il des documents officiels pour ces fonctionnalités? Je ne trouve que des références dans WebView et WebSettings javadocs. – bigstones

+0

@bigstones: Il y avait autrefois 'android_asset', mais cela semble avoir été mangé dans une mise à jour de la documentation depuis que je l'ai cherché pour la dernière fois. – CommonsWare

+0

@CommonsWare - J'ai déplacé le fichier help3.html vers les assets et j'ai modifié le code java en conséquence. Maintenant, je reçois le message "fichier /// android_assets/help3.html" non trouvé dans l'émulateur Android 2.2. –

Questions connexes