pie - android versiones
No se puede importar com.google.android.gms.location.LocationServices (7)
Estoy tratando de obtener la ubicación más precisa.
hasta ahora, he utilizado con éxito LocationClient como en Google docs: http://developer.android.com/training/location/retrieve-current.html
Pero ahora he descubierto que esta clase es antigua: http://developer.android.com/reference/com/google/android/gms/location/package-summary.html
"Esta clase está en desuso. Use LocationServices".
Sin embargo, en los ejemplos de LocationServices incluso en este sitio: la clase LocationClient de Android está obsoleta pero se utiliza en la documentación
Parece que deberíamos usar una importación: com.google.android.gms.location.LocationServices Sin embargo, no puedo importar esta clase ...
Algunas ideas ?
Editar:
He encontrado en esta página: h2ttps: //github.com/M66B/XPrivacy/issues/1774
con un problema aparentemente similar, una especulación de que: "Parece ser parte de los servicios de Play 5.0".
Me pregunto si ese es el caso. ¿Alguien lo ha intentado?
A continuación podría ayudar,
- Debes tener el servicio de juego última revisión 22 descargado.
- Agregue esta línea en las dependencias compile ''com.google.android.gms: play-services: +''
Debe importar el paquete respectivo en el proyecto.
Asegúrese de tener el siguiente artículo en su dependencia de gradle:
dependencies {
compile ''com.google.android.gms:play-services-location:7.+''
}
Encontré el mismo problema y lo resolví actualizando los servicios de Google Play desde 17 hasta el último (actualmente 22) en Android SDK Manager, como se menciona en los comentarios.
Para hacer eso en Eclipse:
- Elimine el proyecto google-play-services_lib de su Eclipse
- Siga el paso 3 de Agregar paquetes SDK . Cuando inicie el Android SDK Manager, debería decir "Actualización disponible: Rev 22" para los servicios de Google Play. Compruébelo y haga clic en "Instalar paquetes N" para actualizarlo.
- Siga Configurando los servicios de Google Play para importar nuevamente el proyecto google-play-services_lib.
Es una pregunta similar para emitir y responder dada here :
En Android Studio:
Haga clic derecho en la carpeta de "aplicaciones" de sus proyectos y haga clic en -> configuración del módulo
Haga clic en la pestaña "dependencias"
Haga clic en el signo + para agregar una nueva dependencia y seleccione "Dependencia de la biblioteca" Busque la biblioteca que necesita y agréguela
LocationClient está en desuso. Tienes que usar GoogleApiclient
, así:
1: Declarar una variable GoogleApiClient
private GoogleApiClient mGoogleApiClient;
2: instanciar
mGoogleApiClient = new GoogleApiClient.Builder(mThisActivity)
.addApi(LocationServices.API)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
3: Implementar devolución de llamada
public class YourClass extends BaseFragment implements
GoogleApiClient.ConnectionCallbacks,
GoogleApiClient.OnConnectionFailedListener, LocationListener {
@Override
public void onConnectionFailed(ConnectionResult result) {
// your code goes here
}
@Override
public void onConnected(Bundle connectionHint) {
//your code goes here
}
@Override
public void onConnectionSuspended(int cause) {
//your code goes here
}
}
4: Comience a obtener actualizaciones de ubicación:
LocationServices.FusedLocationApi.requestLocationUpdates(
mGoogleApiClient, mLocationRequest, this);
5: Eliminar actualizaciones de ubicación:
LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, this);
6: Obtener la última ubicación conocida:
private Location mCurrentLocation;
mCurrentLocation = LocationServices.FusedLocationApi.getLastLocation(mGoogleApiClient);
Por favor, no uses compile ''com.google.android.gms:play-services:9.0.1''
En las versiones de los servicios de Google Play anteriores a 6.5, tenía que compilar todo el paquete de API en su aplicación. En algunos casos, hacerlo hizo más difícil mantener el número de métodos en su aplicación (incluidas las API de marco, los métodos de biblioteca y su propio código) bajo el límite de 65,536.
Desde la versión 6.5, en su lugar, puede compilar selectivamente las API del servicio Google Play en su aplicación. Por ejemplo, en tu caso solo necesitabas esto.
compile ''com.google.android.gms:play-services-maps:9.0.1''
compile ''com.google.android.gms:play-services-location:9.0.1''
Para usar la API fusionada para obtener la última ubicación, debe tener la compile ''com.google.android.gms:play-services-location:9.0.1''
.
Espero eso ayude
Siga estos pasos si está utilizando eclipse: -
- Actualiza la biblioteca de Google Play desde el Administrador de SDK.
- Elimine el antiguo google-play-services_lib del área de trabajo y elimine todas las dependencias.
- Importe la actualización google-play-services_lib y asegúrese de que esté seleccionada la opción de copiar al espacio de trabajo