mFe*_*ein 8 android google-maps-android-api-2
我正在学习谷歌地图API V2,现在我正在阅读Location API,文件说它连接client到Service:
位置服务通过位置客户端将当前位置发送到您的应用程序,位置客户端是位置服务类LocationClient的实例.所有位置信息请求都通过此客户端.
这是否意味着谷歌将获得我的应用所在的所有职位?我知道如果已下载地图,Google地图可以在离线模式下工作,但位置服务是否仅在线运行?
我需要控制我的应用程序中的互联网流量,因此问题.
它的工作原理:
这种方式使用您的服务提供商网络连接来确定您所在的位置。返回的经度和纬度绝对不是最准确的,但是,它们的准确度为 10-15%(根据我的经验)。
下面是一段代码来说明这一点(直接从 Android 网站提取)
// Acquire a reference to the system Location Manager
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
// Define a listener that responds to location updates
LocationListener locationListener = new LocationListener() {
public void onLocationChanged(Location location) {
// Called when a new location is found by the network location provider.
makeUseOfNewLocation(location);
}
public void onStatusChanged(String provider, int status, Bundle extras) {}
public void onProviderEnabled(String provider) {}
public void onProviderDisabled(String provider) {}
};
// Register the listener with the Location Manager to receive location updates
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener);
Run Code Online (Sandbox Code Playgroud)
这种方法比前一种方法准确得多。但缺点是您必须在线并连接到互联网。此方法使用与任何网络浏览器上的 JavaScript 版本的 Google 地图相同的理论。此方法返回的经度和纬度几乎是准确的。
GPS 是最准确的,但它只能在户外工作,会很快消耗电池电量,并且不能像用户希望的那样快速返回位置。然而,GPS 不需要连接到互联网或移动数据。它通过向公共卫星发出请求来获取您的位置。
这是您需要的两个功能。getLatitude() 和 getLongitude()。
请记住,这都是有趣的事情。但谷歌地图API v2有一个简单的功能
mMap.setMyLocationEnabled(true);
它考虑了获取您位置的所有三种可能性。
| 归档时间: |
|
| 查看次数: |
4047 次 |
| 最近记录: |