我正在开发一个请求位置更改的应用程序。我决定使用 Google Play 服务而不是 LocationManager(它会在较新的 android 版本上导致一些问题,这些问题可以通过重启解决)现在我成功连接到 Google Play 服务并 onConnect 运行以下代码:
@Override
public void onConnected(Bundle arg0) {
Toast.makeText(ctx, "Service connected, start listening", Toast.LENGTH_SHORT).show();
LocationRequest locationRequest = LocationRequest.create();
locationRequest.setFastestInterval(1);
locationRequest
.setPriority(LocationRequest.PRIORITY_BALANCED_POWER_ACCURACY);
locationRequest.setInterval(3000);
locationRequest.setNumUpdates(1);
mLocationClient.requestLocationUpdates(locationRequest,
mLocationListener);
}
此代码在有 wi-fi 连接时完美运行,但不会收到 3G/蜂窝网络的更新。我也使用了 NO_POWER 和 HIGH_ACCURACY 优先级,但它们也不起作用。我在清单文件中定义了 COARSE LOCATION 和 FINE LOCATION 权限。任何建议表示赞赏。谢谢