locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
// 经度要求
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true); // 取得效果最好的criteria
provider = locationManager.getBestProvider(criteria, true);

listener = new LocationListener(){ @Override
public void onLocationChanged(Location location) { Log.i("onLocationChanged", "changed");

if (location != null) {
lat = location.getLatitude();
lng = location.getLongitude();

Log.i("" + lng, "" + lat);
} else {
Toast.makeText(NearList.this, "定位失败,请重试", Toast.LENGTH_SHORT)
.show();
} bar.setVisibility(View.GONE);

locationManager.removeUpdates(this);
} @Override
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub

} @Override
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub

} @Override
public void onStatusChanged(String provider, int status,
Bundle extras) {
// TODO Auto-generated method stub

}
};

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER
, 10000, (float)0.0, listener);以前用三星的手机测试可以定位到 但是现在用中兴的手机测试 就不能跳到listener中,用location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);获取时location为null,应该怎样解决 呀