请尝试下面的代码。这对我来说可以。
//First add permission in manifest file:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
public class webViewes extends Activity {
private static String PROVIDER="gps";
private WebView browser;
private LocationManager myLocationManager=null;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
browser=(WebView)findViewById(R.id.webview);
myLocationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
browser.getSettings().setJavaScriptEnabled(true);
browser.addJavascriptInterface(new Locater(), "locater");
browser.loadUrl("http://gmaps-samples.googlecode.com/svn/trunk/articles-android-webmap/simple-android-map.html");
}
@Override
public void onResume() {
super.onResume();
myLocationManager.requestLocationUpdates(PROVIDER, 0, 0, onLocation);
}
@Override
public void onPause() {
super.onPause();
myLocationManager.removeUpdates(onLocation);
}
LocationListener onLocation=new LocationListener() {
public void onLocationChanged(Location location) {
StringBuilder buf=new StringBuilder("javascript:whereami(");
buf.append(String.valueOf(location.getLatitude()));
buf.append(",");
buf.append(String.valueOf(location.getLongitude()));
buf.append(")");
browser.loadUrl(buf.toString());
}
public void onProviderDisabled(String provider) {
}
public void onProviderEnabled(String provider) {
}
public void onStatusChanged(String provider, int status,Bundle extras) {
}
};
public class Locater {
public String getLocation() throws JSONException {
Location loc=myLocationManager.getLastKnownLocation(PROVIDER);
if (loc==null) {
return(null);
}
JSONObject json=new JSONObject();
json.put("lat", loc.getLatitude());
json.put("lon", loc.getLongitude());
return(json.toString());
}
}
}
您好感谢,我已经通过该网站有他们使用一些Java脚本获得网站的功能,但走了我应该在哪里,我的Eclipse Java项目.. – manju 2011-02-02 05:49:00