Bla*_*aze 4 gps angularjs cordova ionic-framework
我正在将GPS服务集成到我的应用程序中.我添加并注入了Cordova GPS插件.我可以检索gps上ngCordova文档中显示的经度和纬度.这是我的方法:
.controller('geoLocationCtrl', function($scope,$window) {
$window.navigator.geolocation.getCurrentPosition(function(position){
$scope.$apply(function(){
$scope.lat = position.coords.latitude;
$scope.lng = position.coords.longitude;
})
console.log(position);
})
})
Run Code Online (Sandbox Code Playgroud)
我的挑战是如何使用上述内容返回用户的当前地址,状态和国家/地区.
小智 8
将经度和纬度转换为人类可读地址的过程称为反向地理编码.许多地图API支持Google Maps和Here Maps.以下是使用Google Maps API执行此操作的方法
添加Google Maps JavaScript API
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=en"></script>
Run Code Online (Sandbox Code Playgroud)
查询API:这是一个角度控制器示例
app.controller('geoLocationCtrl', function($scope, $window) {
$window.navigator.geolocation.getCurrentPosition(function(position) {
$scope.$apply(function() {
$scope.lat = position.Coordinates.latitude;
$scope.lng = position.Coordinates.longitude;
var geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng($scope.lat, $scope.lng);
var request = {
latLng: latlng
};
geocoder.geocode(request, function(data, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (data[0] != null) {
alert("address is: " + data[0].formatted_address);
} else {
alert("No address available");
}
}
})
console.log(position);
})
})
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6285 次 |
| 最近记录: |