Android 谷歌定位不起作用

Android 谷歌定位不起作用,android,api,location,Android,Api,Location,早上好,我想问一下是否有人遇到过和我一样的问题。 我正在制作一个谷歌地图的应用程序,有一天突然不再收集我的位置,我用早期版本进行了测试,效果很好,如果我改变了什么,他们没有给我位置,我也在其他设备上进行了测试,但什么都没有,它每天都停止工作。我想知道这是否是由于谷歌账户开发者控制台的原因,或者api密钥是否会过期或者其他原因 多谢各位 编辑: 我认为密钥不会过期,尝试发布您的代码您可能遗漏了一些内容尝试使用location=locationManager.getLastKnownLocation

早上好,我想问一下是否有人遇到过和我一样的问题。 我正在制作一个谷歌地图的应用程序,有一天突然不再收集我的位置,我用早期版本进行了测试,效果很好,如果我改变了什么,他们没有给我位置,我也在其他设备上进行了测试,但什么都没有,它每天都停止工作。我想知道这是否是由于谷歌账户开发者控制台的原因,或者api密钥是否会过期或者其他原因

多谢各位

编辑:


我认为密钥不会过期,尝试发布您的代码您可能遗漏了一些内容

尝试使用
location=locationManager.getLastKnownLocation(bestProvider)getLocalizacion()
中的code>。我希望这对你有帮助。我做了一个locationManager.getProviders(false),它只返回了2个,1个被动式和另一个gps,在我的应用程序中,我需要通过网络或wifi找到位置,我认为手机可能坏了,但我尝试了另一部手机,结果是一样的
public class BuscarActivity extends ListActivity {

private GoogleMap mMapa;    
private LocationManager locationManager;
private Location location;  

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.buscar_activity);       
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

    mMapa = ((MapFragment) getFragmentManager().findFragmentById(R.id.mapaBuscar))
            .getMap();          

    mMapa.setMyLocationEnabled(true);
    locationManager = new LocationManager(this);

    getLocalizacion();

    mMapa.setOnCameraChangeListener(new OnCameraChangeListener() {
        //con el objeto position puedo recuperar todos los datos necesarios
        public void onCameraChange(CameraPosition position) {               
            getLocation();   
        }
    });
}       


private void getLocalizacion() {            
    //I'm used this firstly
    //location = mMapa.getMyLocation(); 
    //but now I'm using this although anyone works now
    location = locationManager.getLocation();                               
}


public class LocationManager implements ConnectionCallbacks, OnConnectionFailedListener {   
protected GoogleApiClient mGoogleApiClient; 
public static Location mLastLocation;
private Context context;

public LocationManager(Context c) {     
    this.context = c;
    buildGoogleApiClient();
    onStart();
}


protected synchronized void buildGoogleApiClient() {
    mGoogleApiClient = new GoogleApiClient.Builder(context)
            .addConnectionCallbacks(this)
            .addOnConnectionFailedListener(this)
            .addApi(LocationServices.API).build();
}       


@Override
public void onConnected(Bundle connectionHint) {
    mLastLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);    
}


public Location getLocation(){      
    return mLastLocation;
}


@Override
public void onConnectionFailed(ConnectionResult result) {
    Log.i("conection fail", "Connection failed: ConnectionResult.getErrorCode() = "
            + result.getErrorCode());
}

public void onDisconnected() {
    Log.i("disconnected", "Disconnected");
}


@Override
public void onConnectionSuspended(int cause) {
    Log.i("connection fail", "Connection suspended");
    mGoogleApiClient.connect();
}


public void onStart() {
    mGoogleApiClient.connect();
}


public void onStop() {      
    if (mGoogleApiClient.isConnected()) {
        mGoogleApiClient.disconnect();
    }
}
}