Autore Topic: Carica file html locali  (Letto 662 volte)

Offline tuttoilmondo

  • Utente junior
  • **
  • Post: 65
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire Z
  • Sistema operativo:
    Mac OS X 10.7
Carica file html locali
« il: 06 Gennaio 2014, 11:16:02 CET »
0
Ciao a tutti, la mia MainActivity.java è legata ad un file xml che contiene la grafica. Il primo elemento dell'xml è un piccolo webview posto in alto al centro che serve per visualizzare i banner dell'app.

Se per il webview uso un index.html esterno tutto funziona perfettamente, se invece metto il file index.html nella cartella assets e cambio il codice da:

Codice: [Seleziona]
WebView myWebView = (WebView) findViewById(R.id.webview);
                WebSettings webSettings = myWebView.getSettings();
                webSettings.setJavaScriptEnabled(true);
                myWebView.loadUrl("http://www.tuttoilmondo.it/app/iss/banner.html");

a

Codice: [Seleziona]
WebView myWebView = (WebView) findViewById(R.id.webview);
                WebSettings webSettings = myWebView.getSettings();
                webSettings.setJavaScriptEnabled(true);
                myWebView.loadUrl("file:///android_asset/index.html");

non funziona, cosa manca ?

Grazie
Le mie App sul market Android, Apple e Blackbarry:
Bacchiglione, Colorare, Debito Pubblico, Milano WebCam, Padova WebCam, Palermo WebCam, Venezia WebCam
Android Market
BlackBerry Store

Offline iAndroidiano

  • Nuovo arrivato
  • *
  • Post: 14
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    z3 Compact
  • Sistema operativo:
    Windows 7
Re:Carica file html locali
« Risposta #1 il: 06 Gennaio 2014, 17:05:44 CET »
0
Dalla porzione di codice che hai postato tu sembra tutto a posto.
Dalla porzione, appunto. Il resto? Che errori hai quando provi a caricare l'index dalla cartella assets?

Offline tuttoilmondo

  • Utente junior
  • **
  • Post: 65
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire Z
  • Sistema operativo:
    Mac OS X 10.7
Re:Carica file html locali
« Risposta #2 il: 06 Gennaio 2014, 21:43:59 CET »
0
Dalla porzione di codice che hai postato tu sembra tutto a posto.
Dalla porzione, appunto. Il resto? Che errori hai quando provi a caricare l'index dalla cartella assets?

Nessun errore, semplicemente un riquadro vuoto come se non caricasse niente e ne ho la conferma perché se nel file html metto nel body un background colorato, il riquadro rimane comunque bianco.

Il codice completo della pagina è questo:

Codice: [Seleziona]
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.widget.Button;

public class MainActivity extends Activity {

        @Override
        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://www.tuttoilmondo.it/app/iss/banner.html");
               
                Button Button1 = (Button) findViewById(R.id.button1);   
        Button1.setOnClickListener(new OnClickListener() {

               
                public void onClick(View v) {
                      startSubactivity();
                     
                }
        });
       
        Button Button2 = (Button) findViewById(R.id.button2);
        Button2.setOnClickListener(new OnClickListener() {

               
                public void onClick(View v) {
                      startSubactivity2();
                     
                }
        });
       
        Button Button3 = (Button) findViewById(R.id.button3);
        Button3.setOnClickListener(new OnClickListener() {

               
                public void onClick(View v) {
                      startSubactivity3();
                     
                }
        });
        }
       
        private void startSubactivity() {
            Intent intent = new Intent(this, tv.class);
        startActivity(intent);}
    private void startSubactivity2() {
            Intent intent = new Intent(this, track.class);
            startActivity(intent);}
    private void startSubactivity3() {
            Intent intent = new Intent(this, timeline.class);
            startActivity(intent);}

  //Creazione menù
    public boolean onCreateOptionsMenu(Menu menu) {
              menu.add(Menu.NONE, 1, 1, "Help");
              menu.add(Menu.NONE, 2, 1, "Exit app");
              return true;}
    public boolean onOptionsItemSelected(MenuItem item) {
          int id = item.getItemId();   
          switch (id) {
          case 1:
                  Intent intent = new Intent(this, info.class);
              startActivity(intent);
              break;
          case 2:
                  finish();} 
          return true;
    //Fine creazione menù
        }

}

In passato ho fatto delle App con phonegap che sostanzialmente crea una struttura html locale, sono sicuro che non si limita a inserire nella cartella asstes delle pagine html e nel main.java un semplice codice di avvio, credo sia necessario altro, librerie etc.. non sò in realtà è la prima volta che ci provo e non trova nulla in giro.

Paolo
Le mie App sul market Android, Apple e Blackbarry:
Bacchiglione, Colorare, Debito Pubblico, Milano WebCam, Padova WebCam, Palermo WebCam, Venezia WebCam
Android Market
BlackBerry Store