我正在使用Google Maps android sdk v2开发一个Android应用程序,并希望允许用户下载地图并离线使用它们。
在任何人评论它违反了Google地图的条款之前,我可以告诉您可以下载少量专门用于此用例的图块(请参阅此处的 10.5.d节)。
使用谷歌地图js API V3我很容易添加一个标记来显示用户的位置(基于navigator.geolocation).
如何添加指示用户移动方向的箭头(可能使用deviceorientation事件)?
编辑:这是我目前的代码:
function addUserLocation() {
myLocationMarker = new google.maps.Marker({
clickable : false,
icon : new google.maps.MarkerImage('http://maps.gstatic.com/mapfiles/mobile/mobileimgs2.png', new google.maps.Size(22, 22), new google.maps.Point(0, 18), new google.maps.Point(11, 11)),
shadow : null,
zIndex : 999,
title : 'me',
map : map
});
enableWatchPosition();
}
function enableWatchPosition() {
if (navigator.geolocation) {
watchPositionId = navigator.geolocation.watchPosition(locateByBrowser, handleErrorGettingLocation, {
timeout : 30000,
enableHighAccuracy : true,
maximumAge : 1000
});
}
}
function locateByBrowser(location) {
var currentLocation = new google.maps.LatLng(location.coords.latitude, location.coords.longitude);
myLocationMarker.setPosition(currentLocation);
}
Run Code Online (Sandbox Code Playgroud)
目前,位置标记只是一个蓝点.我想添加一个箭头,显示用户进入的方向,就像它出现在谷歌地图移动应用程序中一样.
当用户使用手机移动时,我想到使用deviceorientation事件来获取alpha值,然后按照alpha值旋转箭头图像,如下所示: …