我正在尝试在单击时加载 MapView,Activity
但button
由于加载整个活动需要一些时间,并且用户觉得有些地方出了问题。
所以我尝试使用AsyncTask
,但我得到以下异常:
原因:java.lang.RuntimeException:无法在未调用 Looper.prepare() 的线程内创建处理程序
这是我的代码:
@Override
protected String doInBackground(Void... arg0) {
// TODO Auto-generated method stub
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
geoHandler= new GeoUpdateHandler();
//Getting error over here
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0,
0, geoHandler);
return null;
}
@Override
protected void onPreExecute() {
mapView.setBuiltInZoomControls(true);
mapOverlays = mapView.getOverlays();
mapController=mapView.getController();
mapController.setZoom(16);
}
@Override
protected void onPostExecute(String str) {
// first overlay
drawable = getResources().getDrawable(R.drawable.marker);
itemizedOverlay = new SimpleItemizedOverlay(drawable, mapView);
}
我无法解决它。