Ciao a tutti, sto cercando di aprire in una WebView di un'Activity Android una pagina html che a sua volta dovrebbe aprire una mappa di google centrata in un determinato punto.
Il problema e' che la mappa non viene visualizzata.

Il codice scritto e' il seguente:

cartella assets del progetto android:

map.html

codice:
<html>
	<head>
	    <title>CAR WIDGET HTC</title>
	
		
	    
		<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
		<meta name="viewport" content="width=device-width, target-densityDpi=device-dpi, user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"/>
		<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
		<script type="text/javascript" src="weem/json.js"></script>
	    <script type="text/javascript" src="weem/weem-common.js"></script>
        <script type="text/javascript" src="weem/weem-cms.js"></script>
		<script src="mapmanage.js" type="text/javascript"></script> 
	</head>
	<body onload="start();">
       
    <div id="mapDiv" style="display:block;">
	Hello world!
    </div>

	</body>
</html>
mapmanage.js

codice:
function start() {
	alert('start');
	lat = 45.1113238;
	lon = 7.6738408;
	
	displayGoogleMap(14);
	insertPIN();
}

// funzioni di gestione della mappa
function displayGoogleMap(zoomValue) {
	try {
	    alert('displayGoogleMap');
		var pos = new google.maps.LatLng(lat, lon);
	    alert(pos);
		var myOptions = {
	      zoom: zoomValue,
	      mapTypeId: google.maps.MapTypeId.ROADMAP,
	      center: pos
	    };
	    googleMap = new google.maps.Map(document.getElementById("mapDiv"), myOptions);
	}
	catch (e) {
		alert("Errore: "+e.message);
	} 
}

function insertPIN() {
    alert('insertPIN');
	if (myMarker != null && myMarker != 'undefined') {
		// remove marker
		myMarker.setMap(null);
	}
	
	var pos = new google.maps.LatLng(lat, lon);
	myMarker = new google.maps.Marker({
			icon: 'img/cars156.gif',
			map: googleMap,
			title: '',			
			position: pos
		});
	googleMap.setCenter(pos);
}
E infine nell'activity android nella onCreate ho implementato il seguente codice:

codice:
public void onCreate(Bundle savedInstanceState) {
    	Log.d(TESTER_TAG, "onCreate: start");
    	super.onCreate(savedInstanceState);
        
        setContentView(R.layout.map);
        
        try {
          myWebView = (WebView) findViewById(R.id.webview_compontent);
          webSettings = myWebView.getSettings();
          webSettings.setJavaScriptEnabled(true);
          webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
          webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
          webSettings.setLoadsImagesAutomatically(true);
          
          myWebView.setWebViewClient(new MyWebView(this));
          myWebView.setWebChromeClient(new WebChromeClient());  
          
          myWebView.loadUrl("file:///android_asset/map.html");
        }
        catch (Exception e) {
        	Log.d(TESTER_TAG, "onCreate: WebView error: "+e.toString());	
        }
    }
MyWebView e' la seguente:

codice:
public class MyWebView extends WebViewClient {

	/** application context: it allows to gain access to activity object */
	protected				Context	context;
	
	/**
	 * CONSTRUCTOR
	 */
	public MyWebView (Context _context)
	{
		super();
		this.context = _context;
	}	
}
e in map.xml ho definito la WebView nel seguente modo:

codice:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffffff"
    >
       
   <WebView  
	    android:id="@+id/webview_compontent"
	    android:layout_width="fill_parent" 
	    android:layout_height="fill_parent" 
	    android:layout_weight="1.0"   
	/> 
	
</LinearLayout>
Eseguendo l'applicazione vedo gli alert delle funzioni javascript ma la mappa non viene visualizzata, a volte compare per un brevissimo tempo l'inizio della mappa in alto ma sparisce subito!
Cosa sto sbagliando?

Grazie e ciao
Sandro